제네릭

클래스 내부에서 타입을 지정하는 것이 아닌 외부에서 타입을 지정하는 것

public class Generic<T> {
    private T t;
    
    public void set(T t) {
        this.t = t;
    }

    public T get() {
        return t;
    }
}

Generic<Integer> generic = new Generic<Integer>();
generic.set(10);
generic.get(); // 10

제네릭 메소드

메소드를 호출하기 전 타입을 그대로 메소드에 적용시키는 것

public class Generic<T> {
    private T t;
    
    public <T> T genericMethod(T t) {
        return t;
    }
}

Generic<Integer> generic = new Generic<Integer>();
generic.<String>genericMethod("Hello World"); // Hello World
// 타입을 지정안하면 자동으로 지정된다.
generic.genericMethod("Hello World!!"); // Hello World!! 

제네릭메소드

댓글남기기