Я использую JDK 1.6
Мой главный метод:Магия Обобщения в Java
exmp3<String , Integer> exmp3 = new exmp3("ravi" , new ArrayList<String>());
exmp3.put(5);
exmp3.put(15);
exmp3.put(20);
ArrayList<Integer> a = exmp3.getObject();
System.out.println(a.size());
класс exmp3:
public class exmp3<ABC , XYZ>
{
private ABC abc ;
private ArrayList<XYZ> xyz;
public exmp3(ABC abc , ArrayList<XYZ> xyz)
{
this.xyz = xyz;
}
public void put(int i)
{
ArrayList<Integer> a = (ArrayList<Integer>) this.xyz;
a.add(i);
}
public ArrayList<XYZ> getObject()
{
return xyz;
}
}
Мой запрос при создании экземпляра exmp3
в main
методе почему String
является принятый в качестве параметрического типа ArrayList
, где, как я упомянул exmp3<String , Integer> exmp3
в main
метод.
Имена классов должны начинаться с прописной буквы :) – Autar
Ьгу оператор бриллианта (в java 7) new exmp3 <> –
ваше объявление класса странно, при использовании дженериков вы должны сначала подумать о том, чего вы ожидаете, и каковы ограничения каждого из ваших общих переменных/методов. проверьте эту версию: http: //pastebin.com/0tD37myU – TecHunter