이펙티브자바 아이템23
-
아이템23. 태그 달린 클래스보다는 클래스 계층구조를 활용하라책/이펙티브자바 2021. 8. 24. 11:51
태그 달린 클래스 두 가지 이상의 의미를 표현할 수 있으며, 그 중 현재 표현하는 의미를 태그 값으로 알려주는 클래스를 태그 달린 클래스라고 한다. // 23-1. 태그 달린 클래스 public class Figure { enum Shape { RECTANGLE, CIRCLE }; // 태그 필드 - 현재 모양을 나타낸다. final Shape shape; // RECTANGLE 일때만 쓰인다. double length; double width; // CIRCLE 일때만 쓰인다. double radius; // 원용 생성자 Figure(double radius) { shape = Shape.CIRCLE; this.radius = radius; } // 사각형용 생성자 Figure(double length..