1. 지네릭스 용어
- Box<T> : 지네릭 클래스. 'T의 Box' 또는 'T Box'라고 읽는다.
- T : 타입 변수 또는 타입 매개변수.(T는 타입 문자)
- Box : 원시타입(raw type)
2. 지네릭 타입과 다형성
- 참조 변수와 생성자의 대입된 타입은 일치해야 한다.
class Product { }
class Tv extends Product { }
ArrayList<Tv> list = new ArrayList<Tv>(); // OK 일치
ArrayList<Product> list = new ArrayList<Tv>(); // 에러 불일치 상속 관계여도 안됨
- 지네릭 클래스간의 다형성은 성립(여전히 대입된 타입은 일치해야)
List<Tv> list = new ArrayList<Tv>(); // OK 다형성. ArrayList가 List를 구현
List<Tv> list = new LinkedList<Tv>(); // OK 다형성. LinkedList가 List를 구현
- 매개변수의 다형성도 성립
class Product { }
class Tv extends Product { }
class Audio extends Product { }
ArrayList<Product> list = new ArrayList<Product>();
list.add(new Product());
list.add(new Tv()); // OK
list.add(new Audio()); // OK
'Java' 카테고리의 다른 글
118. 제한된 지네릭 클래스, 지네릭스의 제한 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2025.01.03 |
---|---|
117. Iterator, HashMap과 지네릭스 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2025.01.03 |
115. 타입 변수 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2025.01.03 |
114. 지네릭스 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2025.01.02 |
113. Collections 컬렉션 클래스 요약 - 패스트캠퍼스 백엔드 부트캠프 3기 (0) | 2025.01.02 |