enum

개인 공부/스터디

[이펙티브 자바] 열거타입과 인터페이스

🏠 확장할 수 있는 열거 타입이 필요하면 인터페이스를 사용하라 기본적으로 열거 타입은 기존 상수를 그대로 가져와, 새롭게 추가하여 다른 목적으로 사용할 수 없다. 그런데 확장할 수 있는 열거 타입의 쓰임이 어울리는 경우가 하나는 있는데, 그건 바로 연산 코드이다. 연산 코드의 각 원소는 특정 기계가 수행하는 연산을 뜻한다. ( 예를 들어 계산기 ) 가끔 API가 제공하는 기본 연산 외에 사용자마다 확장 연산을 추가해줘야 할 때가 있다. 이때 사용할 수 있는게 바로 열거 타입이다. 열거 타입은 임의의 인터페이스를 구현할 수 있다. 연산 코드용 인터페이스를 정의하고, 열거 타입이 해당 인터페이스를 구현하면 된다. 그러면 열거 타입이 인터페이스의 표준 구현체 역할을 한다. public interface Ope..

개인 공부/스터디

[이펙티브 자바] 열거(enum) 타입

🏠 int 상수 대신 열거 타입을 사용하라. 열거 타입이란 일정 개수의 상수 값을 정의한 다음, 그 외의 값은 허용하지 않는 타입이다. 사계절, 태양계 행성, 카드게임 종류처럼 정해진 개수가 있다면 좋은 예시가 될 수 있다. 열거 타입이 나오기 전에는 정수 상수를 묶음으로 선언해서 사용했다. public static final int APPLE_A = 0; public static final int APPLE_B = 1; public static final int APPLE_C = 2; public static final int BANANA_D = 0; public static final int BANANA_E = 1; public static final int BANANA_F = 2; 다음과 같은 정수..

Da2isy
'enum' 태그의 글 목록