![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| BasMan |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 42 Регистрация: 5.7.2005 Репутация: нет Всего: нет |
Сам я потихоньку переезжаю с С++ на Java (1 день ))) ), в С++ у меня был хороший отработанный код фабрики. Где я мог зарегать нужный класс (наследник базового) на лету и потом по ходу дела создавать объекты.
Вроде такого:
и потом походу делать создавать объект по "текстовому идентификатору"
Вышеприведенный код отлично работал как в монолитном приложении, так и в разделяемых библитеках, получается я реализовал таким образом систему плагинов. Вопрос, есть ли у кого код фабрики аналогичной по функционалу? |
||||
|
|||||
| Stolzen |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 23 Всего: 48 |
Только это не абстрактная фабрика, а фабричный метод.
Суть в том, что есть map, в которой хранятся классы. При вызове create происходит поиск в хеш контейнере и вызывается конструктор по умолчанию для найденного класса. Если нужно создавать объекты по прототипу, то нужно сделать map для String, Object и в функции create вызывать метод clone хранящегося объекта. При этом все эти объекты должны реализовывать интерфейс Cloneable.
Думаю, идея должна быть понятна. |
|||
|
||||
![]()
|
| Правила форума "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. |