| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Создание адаптера для java класса |
| Автор: Dude03 29.4.2008, 18:49 | ||||
Вот у меня есть два таких класса. Пример утрированный специально=)
Хочеться получить автоматом в runtime вот это:
То есть чтобы это все нормально работало в методом C.process ... Или получить тот же эффект другим способом. Название поле и в А, и в В совершенно одинаковые и названия методов следуют javabean соглашению. ЗЫ. почему-то я уверен, что есть готовое решение=). |
| Автор: ivg 29.4.2008, 20:38 | ||
| Класс D нужно сгенерировать в runtime? А зачем? Слишком много классов типа A и B для которых нужно это сделать? Если так тогда http://java.sun.com/javase/6/docs/api/java/lang/reflect/Proxy.html может помочь. Если нет, добавьте в класс D конструктор, который будет принимать объект класса B и соответственно вызывайте
|
| Автор: Dude03 29.4.2008, 22:06 | ||
| Да, классов достаточно. Не хочется мараться. Механизм proxy из jdk работают только при реализации классом некоторого интерфейса. Нашел класс Enchancer из cglib и для него можно написать interceptor. Все будет тип-топ. Но писать не хочется. Не в том смысле, что мне лень(тем более что я уже написал ;-) ) , а в том, что не хочется включать новые классы в проект. Вот...
Может кто-нить может предложить лучшую реализацию? очень надо=) |
| Автор: w1nd 3.5.2008, 04:18 |
| Если вам нужно извлечь из любого класса, невзирая на его тип, определённое свойство - рефлексия вас спасёт. |