코딜기
[Java] 다형성의 instanceof 본문
반응형
instanceof란?
- instanceof는 객체가 특정 클래스의 인스턴스인지 확인할 때 사용됩니다.
- 다형성이 적용된 경우 부모 타입의 변수에 저장된 객체가 실제로 어떤 타입인지 확인하는 데 유용합니다.
instanceof 사용
public void sayHello(Animal ani) {
if(ani instanceof Dog) {
System.out.println("강아지");
} else if(ani instanceof Cat) {
System.out.println("고양이");
} else if(ani instanceof Duck) {
System.out.println("오리");
}
}
- sayHello 메서드는 다형성이 적용된 매개변수를 받습니다.
- Animal 타입으로 선언된 변수에 Dog, Cat, Duck 객체가 모두 전달 가능합니다.
- 그러나 객체마다 다른 인사법이 있기 때문에 객체 구분이 필요합니다.
- 이때 instanceof 키워드를 사용하여 객체의 타입을 확인할 수 있습니다.
- 중요한 점은 instanceof는 "좌항의 객체가 우항의 타입이냐"가 아니라, "좌항의 객체가 우항의 타입을 가질 수 있느냐"를 묻는 것입니다.
반응형
'Language > Java' 카테고리의 다른 글
[Java] 인터페이스 (Interface) (0) | 2024.09.21 |
---|---|
[Java] 추상 클래스와 추상 메서드 (Abstract) (1) | 2024.09.21 |
[Java] 다형성의 타입 캐스팅 (Type Casting) (0) | 2024.09.19 |
[Java] 다형성 (Polymorphism) (0) | 2024.09.19 |
[Java] super와 super() (0) | 2024.09.02 |
Comments