와일드카드2
<aside>
🔇
설명
- 와일드카드는 제네릭을 정의할 때 사용하는 것이 아님
- 메서드의 타입들을 특정 시점에 변경하려면 제네릭 타입이나, 제네릭 메서드를 사용해야 함.
- 즉 제네릭 타입이나 제네릭 메서드가 필요하면 <T>를 사용하고, 그렇지 않으면 와일드카드를 사용하는 것을 권장
</aside>
하한 와일드카드
<aside>
⚾
설명
- 앞에서 말한 와일드카드는 상한 와일드카드로 Animal에 포함된 자식 클래스들을 모두 사용 가능하였는데 하한 와일드 카드는 다름
</aside>
예제
<aside>
🏭
psvm
wirteBox(objbox);
writeBox(animalBox);
writeBox(dogBox); /하한이 animal
wirteBox(catBox); /하한이 animal
static vod writeBox(Box<? super Animal> Box) {
}
- ? super “class명” 구조로 지정
</aside>