У меня есть жесткое требование, чтобы один из моих классов ClassX создавался рефлексивным образом с помощью стороннего модуля Modul3P, вызывающего конструктор ClassX по умолчанию. Затем Modul3P вызывает один из методов экземпляра, aMethod():
//inaccessible, approximate code
void Modul3P(String className) {
Class clazz = Class.forName(className);
InterfaceX object = (InterfaceX) clazz.newInstance();
object.aMethod();
}
interface InterfaceX {
void aMethod();
}
Мой ClassX, однако, сильно зависит от правильности настройки параметра:
class ClassX implements InterfaceX {
ClassX(Object param){...} //required for proper setup
ClassX(){...}; //called by Modul3P
void aMethod(){...}
}
Как мне решить эту проблему?
Моя неудачная попытка (с помощью Javassist) состояла в том, чтобы создать правильный экземпляр экземпляра, а затем создать класс, производный от ClassX, который может быть инициализирован по умолчанию и который во время инициализации будет внедрен inst:
class ClassX implements InterfaceX {
//...
Class
Подробнее здесь: https://stackoverflow.com/questions/787 ... r-is-meani
Ожидается конструктивный класс по умолчанию, но имеет смысл только параметризованный конструктор. ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Параметризованный конструктор, вызывающий неожиданное поведение при десериализации в Json.Net
Anonymous » » в форуме C# - 0 Ответы
- 13 Просмотры
-
Последнее сообщение Anonymous
-