Улучшение Java-объекта во время выполнения - PullRequest
0 голосов
/ 30 августа 2011

Мне известно, что при использовании библиотек с поддержкой прокси (javassist, динамических прокси-серверов JDK и т. Д.) Можно улучшить класс для реализации интерфейса во время выполнения.: возможно ли усовершенствовать созданный экземпляр объекта для реализации интерфейса во время выполнения (и аналогичным образом предоставить соответствующие обработчики методов).

1 Ответ

2 голосов
/ 30 августа 2011

Нет, мы не можем изменить класс, который уже был загружен. И мы не можем заменить загруженный класс (в загрузчике классов).

Там может быть шансом, если вы

  • загрузка класса с помощью пользовательского загрузчика классов
  • выгрузить загрузчик классов (также следует выгрузить класс)
  • снова загрузить измененный класс с новым экземпляром загрузчика классов

Но это очень, очень черная магия ...

...