|
Generics: вызвать конструктор класса <T>
|
|||
---|---|---|---|
#18+
Всем привет! Есть класс generic <T>: 1. Как в методе generateObjects() правильно создавать новые объекты <T>? new <T>(parameters) - ошибка 2. Как правильно перебрать объекты List<T> objectList через for () в методе run()? for (<T> obj : objectList) - ошибка Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2019, 12:54 |
|
Generics: вызвать конструктор класса <T>
|
|||
---|---|---|---|
#18+
Molasar, варианты: -передать Class<T> и потом от newInstance(); -передать имя класс, потом создать класс по имени и опять newInstance() -передать фабрику для создания нового экземляра класса -сделать класс асбтрактным, сделать абстрактный методы createNew(); и потом в имплементациях таки реализовать его как хочешь -в зависимости от вашей композиции классов можно использовать getGenericSuperclass() ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2019, 13:07 |
|
Generics: вызвать конструктор класса <T>
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2019, 17:49 |
|
Generics: вызвать конструктор класса <T>
|
|||
---|---|---|---|
#18+
Molasar, На второй вопрос коллега mayton дал ответ. А на первый вопрос правильный ответ только один - никак Представьте, что тот самый тип 'T' - это интерфейс. Код: java 1.
Какой из всех возможных Runnable должен создать ваш метод generateObjects? Коллега Озверин дал варианты, но думать нужно вам... ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2019, 22:11 |
|
Generics: вызвать конструктор класса <T>
|
|||
---|---|---|---|
#18+
Код: java 1. 2. 3. 4. 5.
Смотрите... тут в первую очередь надо искать смыслы. Что хочет сделать автор? Что нужно бизнесу. Разумеется шаблонизатор - это мощный механизм и на нем можно написать любую хрень которая никогда не скомпилируется. Но мы же с вами не обезяны. Мы - инженеры. Мы не должны играться кубиками и случайно складывать из них решения! А потом приходить в форум и спрашивать почему оно так. Это не инженерный подход. Нужно спросить. Что должен делаеть генерализованный метод generateObjects() ? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.04.2019, 22:38 |
|
|
start [/forum/topic.php?fid=59&fpage=29&tid=2121374]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
76ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
others: | 242ms |
total: | 415ms |
0 / 0 |