-
지네릭스 용어, 지네릭 타입과 다형성공부/Java 2024. 4. 20. 19:18
지네릭스 용어, 지네릭 타입과 다형성
지네릭스 용어
Box<T> 지네릭 클래스, 'T의 Box' 또는 'T Box'라고 읽는다.
T 타입 변수 또는 타입 매개변수 (T는 타입 문자)
Box 일반 클래스, 원시 타입 (raw type)지네릭 타입과 다형성
아래 예제들은 다음과 같은 관계의 클래스를 갖고 있다고 하자.
class Product{} class Tv extends Product{} class Audio extends Product{}
- 참조 변수와 생성자의 대입된 타입은 일치해야 한다.
ArrayList<Tv> list = new ArrayList<Tv>(); // 정상작동 ArrayList<Product> list = new ArrayList<Tv>(); // 에러 (불일치)
- 지네릭 클래스 간의 다형성은 성립한다.
※ 여전히 대입된 타입은 일치해야 한다.
List<Tv> list = new ArrayList<Tv>(); // 정상작동. ArrayList가 List를 구현 List<Tv> list = new LinkedList<Tv>(); // 정상작동. LinkedList가 List를 구현
- 매개변수의 다형성도 성립된다.
ArrayList<Product> list = new ArrayList<Product>(); list.add(new Product()); list.add(new Tv()); list.add(new Audio());
'공부 > Java' 카테고리의 다른 글
HashMap과 지네릭스 (0) 2024.04.23 Iterator<E> (0) 2024.04.22 타입 변수 (0) 2024.04.19 지네릭스(Generics) (0) 2024.04.19 Collections 클래스 (0) 2024.04.18