[제네릭 장점❓]
다운캐스팅 안해줘도 됨
컴파일 시점에 캐스팅 가능 여부 알려줌
Object o = new Object();
String str1 = (String) o;
BoxObject bo = new BoxObject(new BoxObject("1"));
String str2 = (String) bo.o;
String str1 = (String) (new Object());
[두개의 인터페이스를 중복코드 없이 사용하는 방법은❓]
[1] 매개변수로 받아서 사용하는 메소드를 오버로딩
[2] 상위 인터페이스를 만들어서, 팔다리 접어서 들어간 구현체를 instancof + 캐스팅을 활용하여 팔다리 다시 폄
[3] 제네릭
[Object 타입은 제네릭과 뭐가 다를까❓]
다운캐스팅해서 꺼내 쓸 수 있음
[메서드 제네릭이란❓]
class GenericMethodDemo {
public <S> S genricMethod(S t1, S t2) {
return t1;
}
}
class MainGeneric {
public static void main(String[] args) {
GenericMethodDemo genericMethodDemo = new GenericMethodDemo();
genericMethodDemo.genricMethod(1, "3");
}
}