instanceof는 타입 검사 연산자일까, 값을 꺼내기 위한 도구일까?instanceof를 처음 배울 때는 보통 이렇게 배운다.“객체가 특정 타입의 인스턴스인지 검사하는 연산자”실제로 정의만 놓고 보면 맞는 말이다.예를 들어,if (obj instanceof Person) { ...}이 코드는 “obj가 Person 타입인가?”를 검사하는 코드이다.그런데 생각해 보면, 실제로는 단순히 타입이 궁금해서 instanceof를 사용하는 경우가 거의 없다.예를 들어 if (obj instanceof Person) { Person p = (Person) obj; System.out.println(p.getName());}여기서 내가 정말 궁금했던 것은“이 객체가 Person인가?” 가 아니다.사..