Language/Java

제네릭 메서드가 필요한 이유

kimjingyu 2023. 9. 22. 17:30
728x90
public <T> T genericMethod(T o) {	// 제네릭 메소드
		...
}
 
[접근 제어자] <제네릭타입> [반환타입] [메소드명]([제네릭타입] [파라미터]) {
	// 텍스트
}

제네릭 메서드는 클래스와 다르게 반환타입 이전에 <> 제네릭 타입을 선언한다. 그러면 genericMethod는 파라미터 타입에 따라 T 타입이 결정된다. 즉, 클래스에서 지정한 제네릭 유형과 별도로 메서드에서 독립적으로 제네릭 유형을 선언하여 쓸 수 있다.

 

여기서에 제네릭 메서드가 필요한 이유에 대한 힌트를 얻을 수 있다. 바로 정적 메서드로 선언할 때 필요하기 때문이다.

 

즉, 객체 생성과 관계 없이 독립적으로 static 메서드에서 사용할 제네릭 타입이 필요한 것이다.

 

 

728x90