1. 사용 방법
- 주로 조건문에서 사용한다.
- instanceof의 왼쪽에는 참조변수를 오른쪽에는 타입이 피연산자로 위치한다.
- 결과값은 boolean 값인 true 또는 false가 반환된다.
- 만약 값이 null인 참조변수에 대해 instanceof 연산을 수행하면 false를 결과로 얻는다.
2. 예제(1) - 업-다운 캐스팅
public class Exercise001 {
public static void main(String[] args) {
car c1 = new car();
car c2 = new sportCar();
sportCar c3 = new sportCar();
if(c1 instanceof car) {
System.out.println("1");
}
if(c1 instanceof sportCar) {
System.out.println("2");
}
if(c2 instanceof car) {
System.out.println("3");
}
if(c2 instanceof sportCar) {
System.out.println("4");
}
if(c3 instanceof car) {
System.out.println("5");
}
if(c3 instanceof sportCar) {
System.out.println("6");
}
}
}
class car{
}
class sportCar extends car{
}
3. 예제(2): nstanceof 연산자를 이용하여 형변환 체킹하기.
( 어떤 타입에 대한 instanceof 연산의 결과가 true 라는 것은 검사한 타입으로 형변환이 가능하다는 것을 뜻한다. )