Java/Java: 문법 정리
[Java] instanceof 연산자 정리
데브마우스
2023. 10. 11. 21:53
자바 instanceof 연산자란 무엇인가요?
instanceof 연산자는 두 참조변수의 객체 타입을 확인하여 true 혹은 false를 반환하는 연산자입니다.
class A{}
class B extends A{}
public class Main {
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
System.out.println(a instanceof B); // false
System.out.println(b instanceof B); // true
}
}
instanceof는 붙혀서 작성하는 연산자입니다. instance와 of를 띄워서 작성할 경우 에러가 발생합니다.
위 코드에는 A와 B라는 클래스가 있습니다. class B{}는 A로 부터 상속받았습니다.
b instanceof A는 b의 데이터타입이 B이며 참조변수 B는 A로부터 상속받은 클래스입니다. 그렇기에 instanceof로 비교시 true가 출력됩니다.