열거형(enum)
: 관련된 상수들을 같이 묶어 놓은 것. java는 타입에 안전한 열거형을 제공(값&타입 둘다 체크)
1) 열거형을 정의하는 방법
enum 열거형이름 { 상수명1, 상수명2, ... }
enum Direction { EAST, SOUTH, WEST, NORTH}
이름 0 1 2 3
2) 열거형 타입의 변수를 선언하고 사용하는 방법
3) 열거형 상수의 비교에 ==
와 compareTo()
사용 가능
열거형의 조상 - java.lang.Enum(클래스, 모든 열거형의 조상)
: 모든 열거형은 Enum의 자손이며, 아래의 메소드를 상속받음
values()
,valueOf()
는 컴파일러가 자동으로 추가(조상이 주는게 아닌데 자동추가됨)
↳ valueOf : 문자열로 열거형상수에 대한 참조를 얻을 수 있음.
출처
- 자바의 정석 기초편 : ch 12 - 17~ 20