- 자료형이 무엇인지 궁금할 때 알아내기 위하여 사용한다.
- 하지만 SOLID 원칙에 위배되는 항목이 많으므로 최대한 자제해야 한다.
- 사용할 때는 [특정 자료형]인지 아닌지 궁금할 때 사용하는 것을 추천한다.
- [어느 자료형]인지 궁금해서 사용하는 것은 자제해야 한다.
- [어느 자료형]인지 궁금하다면, 개별 자료형을 알아내는 클래스를 별개로 다형성을 이용해서 구현하라.
- 왜 SOLID 원칙에 위배되는가?
- 자료형을 알고 싶은데, 객체가 무엇인지 어떤 정보를 반환하는지, 불필요한 정보를 노출한다. (캡슐화)
- 변경이나 추가시 instanceof를 사용하고 있는 모든 곳을 수정해야 한다. (개방폐쇄원칙)
- 해당 클래스뿐 아니라 클래스의 인터페이스의 구현체를 모두 알아야 하는 불필요한 책임이 부가된다. (단일책임원칙)
- 더불어, 모든 구현체를 확인해야 하므로 성능도 안 좋다.
'이야기 > 용어사전' 카테고리의 다른 글
자바 직렬화 & 역직렬화 (0) | 2022.07.21 |
---|---|
JSON 요약 (0) | 2022.07.21 |
자바에서 원본과 복사본을 표현하는 방식 (0) | 2022.07.21 |
VM Arguments 설정이란? (0) | 2022.07.07 |
연산(Operations), 연산자(Operator), 피연산자(Operand), 연산식(expressions) (0) | 2022.05.12 |