enum으로 정의된 타입의 유효한 값enum을 사용하면 코드의 가독성과 안정성을 높일 수 있음enum상수는 객체로 취급되며, enum내부에 필드, 메서드, 생성자 등을 추가할 수 있음public enum Week {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATERDAY,
SUNDAY
}
}
여기서 Week는 열거 타입이며, Week today;로 변수를 선언할 수 있다. 열거 상수는 관례적으로 모두 대문자로 작성되며, 여러 단어로 구성될 경우 밑줄(_)로 연결하는 것이 관례이다.
taday 변수에 저장할 수 있는 것은 Week에 선언된 7개의 열거 상수 중 하나이다.
today = Week.FRIDAY;
: 열거 타입 변수 today는 스택 영역에 생성된다. today에 저장되는 값은 Week.SUNDAY 열거 상수가 참조하는 객체의 번지이다. 열거 상수 Week.SUNDAY와 today 변수는 서로 같은 Week 객체를 참조하게 된다.
따라서 today == Week.SUNDAY의 연산 결과는 true이다.