제네릭

김나영·2023년 6월 21일
0

Java 문법 종합반

목록 보기
18/21
  • 타입 언어에서 중복되거나 필요없는 코드를 줄여주는 것

  • 타입 아정성을 해치지 않는 것

  • 클래스 또는 메서드에 사용 할 수 있음

  • 클래스 이름 뒤에 <> 문법 안에 들어가야 할 타입 변수를 지정

// 1. 제네릭은 클래스 또는 메서드에 사용 가능
// <> 안에 들어가야 할 타입 명시
public class Generic<T> { // 19번째 줄에 의해 <T> 안에 String 타입이 들어가 있음
    // 2. 내부 필드의 String
    private T t;
    // 3. 메서드의 return 타입도 String
    public T get() {
        return this.t;
    }
    public void set(T t) {
        this.t = t;
    }
    public static void main(String[] args) {
        // 4. Generic을 통해서 구현한 클래스를 사용, 클래스에 선언했기 때문에 <T>가 String이 됨
        Generic<String> stringGeneric = new Generic<>();
        // 5. 객체 안에서의 T는 모두 다 String이기 때문에 정상 작동
        stringGeneric.set("Hello World");
        String tValueTurnOutWithString = stringGeneric.get();
        System.out.println(tValueTurnOutWithString);
    }
}

0개의 댓글