프로그래밍/JAVA
[ JAVA ] Instanceof 연산자란? Instanceof 연산자 사용방법
리신
2022. 10. 27. 20:20
반응형
Instanceof 연산자란?
객체가 어떤 클래스인지, 어떤 클래스를 상속받았는지 확인하는데 사용하는 연산자 이다.즉, 참조변수가 참조하고 있는 인스턴스의 실제 타입을 알아보기 위해 해당 연산자를 사용한다.
💡문법💡
object instanceOf type
object가 type이거나 type을 상속받는 클래스라면 true를 리턴합니다. 그렇지 않으면 false를 리턴합니다.
💎예제💎
간단하게 살펴보자면,
class A { }
class B extends A { } // A 클래스를 상속
public static void main(String[] args) {
A a = new A();
B b = new B();
System.out.println(a instanceof A); // true 출력
System.out.println(b instanceof A); // true 출력 : A를 상속 받았기 때문
System.out.println(a instanceof B); // false 출력
System.out.println(b instanceof B); // true 출력
}
🙄그럼 Object에 대한 Instanceof는 어떤 값이 나올까?
→ true 값이 나온다!
모든 클래스는 Object를 상속하기 때문에 Object Instanceof Object 는 항상 true라는 값이 나옴.
🙄그럼 아래 코드처럼 null에 대한 Instanceof는 어떤 값이 나올까?
Car car = null;
System.out.println(car instanceof Object);
→ false 값이 나온다!
* 참고자료 : Java의 정석
반응형