instanceof는 객체타입을 확인하는데 사용한다. 속성은 연산자이고 형변환이 가능한 지 해당 여부를 true 또는 false로 가르쳐준다. 객체 타입이라 하니 어려운 개념 같은데, 주로 부모 객체인지 자식 객체인지 확인하는데 쓴다고 생각하면 된다.
현재 참조하고 있는 클래스를 확인할 수 있는 메소드인 getClass를 함께 알아두면 좋다.
관련글보기: - 자바(Java) getClass 메소드 사용방법
instanceof의 사용형식은 ‘객체 + instanceof + 클래스’ 이다.
A를 부모, B를 자식 클래스로 세팅하고 두 클래스 간 형변환이 가능한지 확인해보았다.
class A{}
class B extends A{}
class instanceofEx01 {
public static void main(String[] args) {
A a = new A();
B b = new B();
System.out.println("a instanceof A : " + (a instanceof A));
System.out.println("b instanceof A : " + (b instanceof A));
System.out.println("a instanceof B : " + (a instanceof B));
System.out.println("b instanceof B : " + (b instanceof B));
}
}
<결과>
a instanceof A : true
b instanceof A : true
a instanceof B : false
b instanceof B : true
세 번째 결과가 false인 이유는 간단하다. 부모가 있어야 자식이 있는데, 세 번째는 부모가 자식이 되려 했기 때문이다.
<관련글보기>
- 자바(Java) getClass 메소드 사용방법
출처 : https://improver.tistory.com/140
728x90
반응형
'Back-end > JAVA & Spring' 카테고리의 다른 글
[Java] JsonObject , JsonArray 다루기 (JsonParser로 파싱하기) (0) | 2021.05.11 |
---|---|
[Java] JSONObject 사용하기 (0) | 2021.05.11 |
[Spring] @value(value annotation) 사용 방법 (1) | 2021.05.10 |
[JSP] JSP (JavaServer Pages ) 란 무엇인가? (0) | 2021.05.10 |
[Java] Java EE , Servlet 개념과 정리글 (0) | 2021.05.10 |
댓글