본문

[2017.08.29] 16. 제네릭 개념과 알아야할 점

제네릭은 '클래스 내부에서 사용할 데이터 타입을 외부에서(인스턴스화 할 때) 설정해 사용하는 방법' 이다.

(제네릭을 사용하는 이유 - http://heepie.tistory.com/35)


제네릭의 특징

1. 제네릭에 설정할 수 있는 데이터 타입은 레퍼런스 타입만 가능하다. (기본 데이터 타입은 가능하지 않다.)


2. 생성자에 제네릭을 사용할 경우, 제네릭 생략이 가능하다. 


3. 메소드에서 제네릭을 사용하는 방법

접근제어자리턴 타입 사이에 제네릭을 명시 후 사용


4. 제네릭으로 설정할 수 있는 데이터 타입 제한 - extends 키워드

데이터 타입을 외부에서 자유롭게 설정 할 경우, 개발자가 원하지 않는 데이터 타입이 설정되어 문제가 발생할 가능성이 있다. 그래서 개발자가 원하는 데이터 타입만 설정 가능하도록 'extends' 키워드로 설정 할 수 있다.

String은 Info 클래스의 자식 클래스가 아니므로 제네릭 설정이 불가능하다.


※ 클래스와 인터페이스 모두 extends로 통일



# 제네릭 #generic


공유

댓글