제네릭이란?
- 클래스, 메소드에서 사용할 데이터 타입을 나중에 확정하는 기법.
📌 제네릭을 사용하는 이유
- 타입 안정성을 제공
- 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해짐.
제네릭 메소드란?
- 클래스의 전역이 아닌 메소드의 선언부에 적은 제네릭으로 리턴 타입, 파라미터의 타입이 정해지는 메소드
제네릭 메소드 문법
public<타입_파라미터>리턴타입 메소드명(매개변수,...){...}
public<T>Box<T> boxing(T t) {...}
제네릭 메소드를 사용하는 이유
- 클래스에서와 달리 호출시에 매개 타입을 지정하기 때문에 static을 사용가능하다.
- 타입캐스팅 에러의 경우를 제외시킬 수 있기 때문에 훨씬 안전하게 사용할 수 있어서
📕 토막상식
- static 변수가 제네릭을 사용할 수 없는 이유는 제네릭 클래스가 인스턴스가 되기 전에 static은 메모리에 올라가는데 이때, 리턴타입의 타입인 T가 결정되지 않기 때문에 사용할 수 없다.
- 제네릭 메소드를 사용하면 클래스의 T와 메소드의 T는 같은 문자를 사용해도 다른 문자라는 것을 기억하기