프로그래밍에서 다형성은 하나의 객체가 여러 타입의 특성을 가질 수 있음을 의미한다.
자바에서는 이를 통해 하나의 참조 변수로 여러 타입의 객체를 참조할 수 있다. 이런 유연성은 객체 지향 프로그래밍의 효율성을 크게 향상시킨다. 그러나 때로는 참조하고 있는 구체적인 객체의 타입을 알아야 할 필요가 있다.
이럴때 instanceof를 사용한다 !
instanceof의 역할
주어진 객체가 특정 클래스나 인터페이스의 인스턴스인지 여부를 확인하는데 사용된다. 이 연산자는 참조형 변수가 실제로 참조하고 있는 객체의 타입을 확인할 때 매우 유용하다.
안전한 다운캐스팅
다운캐스팅을 수행하기 전에 먼저 instanceof를 사용해서 원하는 타입으로 변경이 가능한지 확인한 다음에 다운캐스팅을 수행하는 것이 안전하다. 다운캐스팅은 상위 클래스 타입에서 하위 클래스 타입으로의 타입 변환을 의미한다.
이 과정에서 원하지 않는 ClassCastException을 방지하기 위해 instanceof로 확인하는 것이 좋다.
'Java' 카테고리의 다른 글
[인프런] 추상 클래스 (0) | 2024.05.28 |
---|---|
[인프런] 다형성과 메서드 오버라이딩 (0) | 2024.05.28 |
[인프런] 다형성 (0) | 2024.05.27 |
[인프런] super (0) | 2024.05.27 |
[인프런] 상속과 접근 제어 (0) | 2024.05.27 |