제네릭이 뭔가요❓✨

YaR Lab·2024년 8월 2일
0

TIL✨

목록 보기
130/136
post-thumbnail

24.07.30

today 😉

[제네릭 장점❓]
다운캐스팅 안해줘도 됨
컴파일 시점에 캐스팅 가능 여부 알려줌

        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");
    }
}

0개의 댓글