반응형
클래스 계층구조
-
Item 23. 태그 달린 클래스보다는 클래스 계층구조를 활용하라Book/Effective Java 3E 2022. 11. 2. 21:30
다음 코드는 원과 사각형을 표현할 수 있는 클래스입니다. package effectivejava.chapter4.item23.taggedclass; // 코드 23-1 태그 달린 클래스 - 클래스 계층구조보다 훨씬 나쁘다! class Figure { enum Shape { RECTANGLE, CIRCLE }; // 태그 필드 - 현재 모양을 나타낸다. final Shape shape; // 다음 필드들은 모양이 사각형(RECTANGLE)일 때만 쓰인다. double length; double width; // 다음 필드는 모양이 원(CIRCLE)일 때만 쓰인다. double radius; // 원용 생성자 Figure(double radius) { shape = Shape.CIRCLE; this.radi..