충분히 쌓여가는
7.9 객체 타입 확인 - instanceof 본문
변수가 참조하는 객체의 타입을 확인하고자 할 때
instanceof 연산자를 사용할 수 있다
instanceof 연산자의 좌항에는 객체, 우항에는 타입이 오는데
좌항의 객체가 우항이 타입이면 true, 아니면 false를 산출한다
boolean result = 객체 insatanceof 타입;
예를 들어 Child 타입으로 강제 타입 변환하기 전에 매개값이 Child 타입인지 여부를 instanceof 연산자로 확인한다
public void method(Parent parent) {
if(parent instanceof Child) { // parent 매개변수가 참조하는 객체가 Child인지 조사
Child child = (Child) parent;
//child 변수 사용
}
}
Java 12부터는 instanceof 연산의 결과가 true일 경우, 우측 타입 변수를 사용할 수 있기 때문에 강제 타입 변환이 필요 없다
if(parent instanceof Child child) {
//child 변수 사용
}
'이것이 자바다 > 07 상속' 카테고리의 다른 글
7.10 추상 클래스 - 추상 메소드와 재정의 (0) | 2024.04.02 |
---|---|
7.10 추상 클래스 (0) | 2024.04.02 |
7.8 다형성 - 매개변수 다형성 (0) | 2024.04.02 |
7.8 다형성 (0) | 2024.04.02 |
7.7 타입 변환 - 강제 타입 변환 (0) | 2024.04.02 |