패턴 매칭 연산자는 흔히 instanceof 연산자라고 합니다.

 

 


 

instanceof 연산자는 공식적으로 Pattern Matching Operator, 즉 패턴 매칭 연산자입니다.

 

다음은 instanceOf 연산자의 예시 코드입니다.

Parent parent = new Child();


if(parent instanceof Child){
    Child child = (Child) parent;
}

 

기존의 instanceof 연산자는 객체와 객체에 할당된 타입(Child)를 비교해서 참일 경우 강제 형 변환을 했고,

이러한 강제 형 변환은 프로그램의 성능을 확 떨어트렸습니다.

 

자바 15 부터는 다음과 같이 형 변환 방법이 추가되었습니다.

if(parent instanceof Child child) {
    System.out.println(child);
} // if

 

비교문 바로 옆에 변수를 추가에서 참일 경우,

바로 변수로 값을 넣는 방식이 추가 되었습니다.

 

하지만 이러한 방식은 if문의 지역변수이기 때문에 if문이 종료될 경우 새로운 방식에서의 child 변수는 사라지게 됩니다.

'Java' 카테고리의 다른 글

익명구현객체  (0) 2023.07.26
인터페이스 다중 상속  (0) 2023.07.26
인터페이스  (0) 2023.07.25
Getter Setter  (0) 2023.07.21
생성자  (0) 2023.07.19

+ Recent posts