Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Параметризация / 6 сообщений из 6, страница 1 из 1
28.02.2014, 00:26
    #38574835
alex021
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
Добрый вечер всем!

Есть метод, который заполняет список, который в него передается. Например обхектами класса Fish
Собственно я не совсем понимаю как заполнить непараметризированный список именно объектами типа Fish
В метод могут поступать различные объекты

Может быть кто поймет чего я тут написал и объяснит?)

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
 public class SomeObject{
   public <T> void addObjects(ArrayList<T> list, T e) {
   if(list.getClass()==new Fish().getClass()){
//вот тут должна происходить какая-то магия для заполнения
         list.add(new Fish(1));
         list.add(new Fish(2));
   }
 }
...
Рейтинг: 0 / 0
28.02.2014, 00:54
    #38574847
alex021
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
может быть, кто - нибудь может меня отправить куда-нибудь почитать?) ибо гугление не сильно помогло мне в этом вопрсое(
...
Рейтинг: 0 / 0
28.02.2014, 01:04
    #38574851
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
public <T> void addObjects(List<T> list, Factory<T> f) {
         list.add(f.newInstance());
         list.add(f.newInstance());
}

interface Factory<T>{
   T newInstance();
}
...
Рейтинг: 0 / 0
28.02.2014, 01:32
    #38574857
alex021
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
Blazkowicz,

спасибо, Вы всегда выручаете,
компилятор то не ругается
но поптылся разобраться так и не дошло, как в таком случае вызывать этот метод?

при моей версии:
1)
Код: java
1.
new Object.addObjects(какой-то лист, new Fish);


2)и в самом методе как-то кастить что-ли классы..ток как не знаю(

с интерфейсом вообще запутался(
...
Рейтинг: 0 / 0
28.02.2014, 01:36
    #38574861
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
Код: java
1.
2.
3.
4.
5.
6.
addObjects(new ArrayList<Fish>(), new Factory<Fish>(){
   int i = 0;
   public Fish newInstance(){
      return new Fish(i++);
   }
})
...
Рейтинг: 0 / 0
28.02.2014, 01:51
    #38574868
alex021
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Параметризация
Blazkowicz,

Спасибо =) буду дальше разбираться
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Параметризация / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]