Generics_제한
2024. 3. 21. 16:57ㆍJAVA
Generic 클래스에 타입 변수를 지정할 때, extends 를 통해 타입에 제한을 둘 수 있다.
public class Zoo<T extends Animal> {
ArrayList<T> list = new ArrayList<>();
}
위와 같이 작성하면 타입변수 <T> 에는 Animal 의 자손 클래스만 입력 가능해진다.
public class Animal {
}
public class Dog extends Animal{
}
public class LimitedGeneric {
public static void main(String[] args) {
Zoo<Dog> dogPark = new Zoo<>();
// Zoo<Radio> RadioPark = new Zoo<Radio>(); // 컴파일 에러.
}
}
허용된 타입 외의 정보를 넣으려 하면, 컴파일 단계에서 걸러낼 수 있다.

// Animal을 상속하지 않는다.
public class Radio {
}
'JAVA' 카테고리의 다른 글
| java.lang (0) | 2024.04.04 |
|---|---|
| Generics_제약 (0) | 2024.03.21 |
| Optional<T> (0) | 2024.02.23 |
| 컬렉션_TreeSet (0) | 2024.02.20 |
| 컬렉션_HashSet_2 (0) | 2024.02.20 |