[Item23] - 태그 달린 클래스보다는 클래스 계층구조를 활용하라.
Effective Java 3/E를 공부하며 작성한 글입니다. 혼자 공부하고 정리한 내용이며, 틀린 부분은 지적해주시면 감사드리겠습니다 😀 태그 클래스 태그 달린 클래스란, 현재 상태에 대한 필드가 존재하는 클래스를 의미한다. 아래 클래스에 대한 코드를 확인해보면 shape라는 변수가 현재 Figure가 RECTANGLE인지 CIRCLE인지에 대한 상태를 반환하므로, 태그로 볼 수 있다. public class Figure { enum Shape {RECTANGLE, CIRCLE}; final Shape shape; // 사각형(RECTANGLE)일 경우 사용 double length, width; // 원(CIRCLE)일 경우 사용 double radius; public Figure(double rad..