ArrayList<타입> list = new ArryList<타입>();
위와 같이 참조변수의 타입 옆에 <타입>을 적어주고 생성자 옆에 <타입>을 적어주면 된다. 단 두 타입은 일치해야 한다.
ArrayList<String> list = new ArrayList<String>();
ArrayList<Integer> list = new ArrayList<Integer>();
위와 같이 일치해야 한다. 조상과 자손의 관계라도 불가하다.
List<String> list = new ArrayList<String>();
Set<<String> set = new hashSet<String>();
ArrayList<Sport> list = new ArrayList<Sport>();
list.add(new Sport());
list.add(new Soccer());
list.add(new Baseball());
Sport s = list.get(0);
Soccer s2 = (Soccer)list.get(1);
Baseball b = (Baseball)list.get(2);
만약 Soccer, Baseball 클래스가 Sport 클래스를 상속 받고 있다면 매개변수로 저장할 수 있다. get() 메서드로 값을 불러오려면 반환 타입입 Sport이기 때문에 자손 클래스 타입에 값을 저장하려면 형변환을 해줘야 합니다.