Notice
Recent Posts
Recent Comments
«   2024/11   »
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
Archives
Today
Total
관리 메뉴

충분히 쌓여가는

7.9 객체 타입 확인 - instanceof 본문

이것이 자바다/07 상속

7.9 객체 타입 확인 - instanceof

빌드이너프 2024. 4. 2. 19:36

변수가 참조하는 객체의 타입을 확인하고자 할 때

instanceof 연산자를 사용할 수 있다

 

instanceof 연산자의 좌항에는 객체, 우항에는 타입이 오는데

좌항의 객체가 우항이 타입이면 true, 아니면 false를 산출한다

boolean result = 객체 insatanceof 타입;

 

 

예를 들어 Child 타입으로 강제 타입 변환하기 전에 매개값이 Child 타입인지 여부를 instanceof 연산자로 확인한다

public void method(Parent parent) {
  if(parent instanceof Child) { // parent 매개변수가 참조하는 객체가 Child인지 조사
    Child child = (Child) parent;
    //child 변수 사용
  }
}

 

 

Java 12부터는 instanceof 연산의 결과가 true일 경우, 우측 타입 변수를 사용할 수 있기 때문에 강제 타입 변환이 필요 없다

if(parent instanceof Child child) {
  //child 변수 사용
}

'이것이 자바다 > 07 상속' 카테고리의 다른 글

7.10 추상 클래스 - 추상 메소드와 재정의  (0) 2024.04.02
7.10 추상 클래스  (0) 2024.04.02
7.8 다형성 - 매개변수 다형성  (0) 2024.04.02
7.8 다형성  (0) 2024.04.02
7.7 타입 변환 - 강제 타입 변환  (0) 2024.04.02