[Java] 제네릭 프로그래밍

2020. 6. 30. 02:52Language/Java

1. 제네릭 프로그래밍

컬렉션 프레임 워크에 적용되어 있다. 변수의 선언이나 메서드의 매개변수를 하나의 참조 자료형이 아닌 여러 자료형을 변환 될 수 있다. 실제 사용되는 참조 자료형으로의 변환은 컴파일러가 검증하기에 안정적인 프로그래밍 방식이다. 여러 참조 자료형으로 대체 될 수 있는 부분을 하나의 문자로 표현한다.(클래스<T>, 반환형/매개변수T).

Powder, Plastic, GenericPrinter, GenericPrinterTest

 

 

 

2. 제네릭 프로그래밍 응용 (1)

프린터에는 Powder와 Plastic의 재료는 가능하지만 Water로 재료를 사용할 수 없다. 상위 클래스를 생성하여 논리적으로 맞지 않은 행위에 대해 제약을 걸어둔다.

Powder, Plastic. Water, Material, GenericPrinter, GenericPrinterTest

 

 

 

3. 제네릭 프로그래밍 응용 (2)

Powder, Plastic. Water, Material, GenericPrinter, GenericPrinterTest

 

 

 

4. 제네릭 프로그래밍 응용 (3)

자료형 매개 변수가 두개 이상 일 때 사용이 가능하다(<T, V>). 일반 클래스에서도 사용 가능하며, 메서드에서도 사용할 수 있다. 메서드 내에서의 자료형 매개 변수는 메서드 내에서만 유효하다(지역 변수와 동일한 개념).

 

※ 클래스의 제네릭과 메서드의 제네릭 매개변수은 동일하지 않다.


[참고] github.com/ozofweird/Java_Practice

728x90