![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Dude03 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 257 Регистрация: 28.4.2006 Репутация: нет Всего: 6 |
Вот у меня есть два таких класса. Пример утрированный специально=)
Хочеться получить автоматом в runtime вот это:
То есть чтобы это все нормально работало в методом C.process ... Или получить тот же эффект другим способом. Название поле и в А, и в В совершенно одинаковые и названия методов следуют javabean соглашению. ЗЫ. почему-то я уверен, что есть готовое решение=). Это сообщение отредактировал(а) Dude03 - 29.4.2008, 18:52 |
||||
|
|||||
ivg |
|
|||
![]() Autonomous R&D ![]() ![]() Профиль Группа: Участник Сообщений: 686 Регистрация: 8.2.2006 Где: Екатеринбург Репутация: 33 Всего: 81 |
Класс D нужно сгенерировать в runtime? А зачем? Слишком много классов типа A и B для которых нужно это сделать? Если так тогда Proxy может помочь.
Если нет, добавьте в класс D конструктор, который будет принимать объект класса B и соответственно вызывайте
|
|||
|
||||
Dude03 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 257 Регистрация: 28.4.2006 Репутация: нет Всего: 6 |
Да, классов достаточно. Не хочется мараться. Механизм proxy из jdk работают только при реализации классом некоторого интерфейса.
Нашел класс Enchancer из cglib и для него можно написать interceptor. Все будет тип-топ. Но писать не хочется. Не в том смысле, что мне лень(тем более что я уже написал ;-) ) , а в том, что не хочется включать новые классы в проект. Вот...
Может кто-нить может предложить лучшую реализацию? очень надо=) Это сообщение отредактировал(а) Dude03 - 29.4.2008, 22:33 |
|||
|
||||
w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 20 Всего: 54 |
Если вам нужно извлечь из любого класса, невзирая на его тип, определённое свойство - рефлексия вас спасёт.
-------------------- ![]() ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |