728x90
제너릭 프로그래밍이란 클래스에서 멤버 변수나 메소드의 자료형을 고정시키는 게 아닌, 여러 자료형 모두 사용 가능하도록 하는 방식이다.
이때 <T>에 extends를 사용할 수도 있는데 이는 사용할 수 있는 자료형을 제한하기 위해서이다.
<T extends Material>으로 하면 T는 Material의 자료형만 올 수 있다.
Material의 하위 클래스로 Powder, Plastic 등이 있다면 그 하위 클래스로 선언 가능하다.
그러나 Material에 포함되지 않는 Water, Integer 등은 불가능한 것이다.
자료형을 <T> 하나가 아닌 <T, V> 와 같이 두개 이상도 사용 가능하다.
728x90
'프로그래밍 > Java' 카테고리의 다른 글
[Java] 내부 클래스 (0) | 2020.02.06 |
---|---|
[Java] 컬렉션(Collection) 프레임워크 (0) | 2020.02.04 |
[Java] String, Wrapper 클래스 (0) | 2020.02.04 |
[Java] Object 클래스 (0) | 2020.02.03 |
[Java] 인터페이스 (0) | 2020.02.03 |