instanceof
instanceof
에서 객체 타입 확인뿐만 아니라 캐스팅까지 할 수 있다.
JEP 394 Pattern Matching for instanceof
if (animal instanceof Cat) {
Cat cat = (Cat) animal;
cat.meow();
} else if (animal instanceof Dog) {
Dog dog = (Dog) animal;
dog.woof();
}
instanceof
를 이용해 객체 타입을 확인하고 추가로 캐스팅을 해줘야 했다.
if (animal instanceof Cat cat) {
cat.meow();
} else if(animal instanceof Dog dog) {
dog.woof();
}
instanceof
에서 객체 타입 확인과 캐스팅을 한번에 해결할 수 있다.