Посмотрите на класс Class , в частности, метод forName , который позволяет ссылаться на класс по имени. Любой класс в пути может быть загружен следующим образом. Возможна ли перезагрузка , я не знаю.
В любом случае каждый класс, который вы хотите динамически загрузить, должен был бы реализовать ваш пользовательский интерфейс AddOn
, таким образом реализуя initialize
и shutdown
.