Programming/자바(Java)

12-1 제네릭스 Generics

먹보 개발자 2024. 10. 15. 15:55

- 컴파일시 타입을 체크해 주는 기능(compile-time type check) - JDK1.5

- 객체 타입의 안정성을 높이고 형변환의 번거로움을 줄여줌

 

1. 지네릭스의 장점: 타입 안정성을 제공한다.

2. 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해진다

 

제네릭스를 쓰면 Runtime에 발생할 수 있는 에러를 Compile시점으로 끌고 올 수 있다 

 

타입 변수

- 클래스를 작성할 때, Object타입 대신 타입 변수(E)를 선언해서 사용. (일반클래스 -> 제네릭 클래스)

 

타입 변수에 대입하기

- 객체를 생성시, 타입 변수(E) 대신 실제 타입(Tv)을 지정(대입)

- 타입 변수 대신 실제 타입이 지정되면, 형변환 생략가능

 

제네릭스 용어

Box<T>   제네릭 클래스. 'T의 Box' 또는 'T Box'라고 읽는다.

T             타입 변수 또는 타입 매개변수.(T는 타입 문자)

Box         원시타입(raw type)

 

제네릭 타입과 다형성

- 참조 변수와 생성자의 대입된 타입은 일치해야한다.

- 제네릭 클래스간의 다형성은 성립.(여전히 대입된 타입은 일치해야함)