instanceof 의미
instanceof는 원래 인스턴스의 형이 맞는지 여부를 확인하는 키워드이다. 형이 맞으면 true 아니면 false를 반환한다.
instanceof 예제 및 설명
class Parent {
}
class Child extends Parent {
}
public class test {
public static void main(String[] args) {
Parent parent = new Parent();
Child child = new Child();
System.out.println(parent instanceof Parent);
System.out.println(child instanceof Parent);
}
}
위에 코드를 보면 안에 내용은 없는 상위 클래스와 하위 클래스를 만든 것을 볼 수 있다. 이후에 각각의 객체를 생성해서 instanceof로 true/false를 출력하는 코드이다. 결과를 보고 instanceof의 특징을 살펴보자.
true
true
출력된 결과를 보면 둘 다 true가 나오는 것을 볼 수 있다. parent 객체는 Parent 클래스에서 나온 객체가 맞기에 true가 반환되지만, child 객체는 왜 true가 반환될까? 바로 상속받은 하위 클래스도 true로 반환이 되기 때문이다.
Syntax : object instanceof type
객체지향에서 엄청나게 중요한 키워드네요
처음 알았습니다.. 감사합니다!