
instanceof는 객체타입을 확인하는데 사용한다. 속성은 연산자이고 형변환이 가능한 지 해당 여부를 true 또는 false로 가르쳐준다. 객체 타입이라 하니 어려운 개념 같은데, 주로 부모 객체인지 자식 객체인지 확인하는데 쓴다고 생각하면 된다.
현재 참조하고 있는 클래스를 확인할 수 있는 메소드인 getClass를 함께 알아두면 좋다.
instanceof의 사용형식은 ‘객체 + instanceof + 클래스’ 이다.
A를 부모, B를 자식 클래스로 세팅하고 두 클래스 간 형변환이 가능한지 확인해보았다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
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
|
cs |
'Programming > [JAVA]' 카테고리의 다른 글
[JAVA] MemberInnerClass 멤버 내부 클래스 (0) | 2018.03.23 |
---|---|
[JAVA] ArithmeticsException (0) | 2018.03.23 |
[JAVA, 자바]Stack, Queue Memory & DynamicBinding영역 (스택, 큐 메모리 & 동적바인딩) (0) | 2018.03.21 |
[JAVA, 자바]Wrapper Class (래퍼 클래스) (0) | 2018.03.21 |
[JAVA, 자바] 성적 처리 프로그램(toString 이용) (0) | 2018.03.21 |