Java Generic

less than 1 minute read

✍2022-03-20

지네릭스

본 내용은 자바의 정석을 바탕으로 작성

❗ 개인이 공부한 내용을 적은 것 이기에 오류가 많을 수도 있음

1️⃣ 타입 변수

클래스를 작성할 때, Object타입 대신 타입 변수(E)를 선언해서 사용

2️⃣ 지네릭 용어

1) Box : 지네릭 클래스

2) T : 타입변수 또는 타입 매개변수

3) Box : 원시 타입

Box b = new Box() ;

💡 좌측 Box의 참조변수 부분과 우측 Box의 생성자의 부분의 지네릭 타입이 일치해야한다

3️⃣ 지네릭 클래스의 객체 생성과 사용

  • 객체 생성시 지네릭 타입이 일치해야 하는것이 중요

4️⃣ 와일드 카드

  • 하나의 참조 변수로 대입된 타입이 다른 객체를 참조 가능

방법

  1. <? extends T> : 와일드 카드의 상한 제한. T와 그 자손들만 가능
  2. <? super T> : 와일드 카드의 하한 제한. T와 그 조상들만 가능
  3. <?> : 제한 없음. 모든 타입이 가능<? extends Object>와 동일
  • Product와 Product의 자손들만 사용가능

📑 출처

Categories:

Updated:

Leave a comment