본문 바로가기
개발자 양성과정 필기노트/JAVA

Enum

by jono 2021. 11. 13.

# 개념

- 한정된 상수만을 가지는 enum타입의 클래스를 정의하는 방법.

 

# 사용 이유

1. 데이터를 상수로만 관리하는 경우

- 외부에서 실제 데이터를 정확하게 알지못해도 상수명만으로 데이터를 사용할 수 있음

- 클래스명.상수명 -> 통해서 바로 데이터에 접근할 수 있으므로 외부의 접근이 쉽다.

- 상수데이터의 값이 정수인 경우, Setter호출시 상수데이터 범위 외의 값이 들어와도 컴파일 에러가 발생하지 않음

=> 저장된 데이터를 꺼내서 사용하는 경우 오류가 발생할 가능성이 있어서 추가적인 검증과정을 필요로하게 된다.

 

# enum 정의하기

- 클래스 정의하는 것과 비슷함.

- enum타입 내의 상수는 자동으로 순서번호(ordinal)이 0부터 부여된다. (index같이)

enum Season{
 	SPRING, SUMMER, AUTUMN, WINTER
}

 

# 메서드

1. 비교대상.compare(기준) - [기준데이터] 와 [비교대상] 데이터간의 ordinal의 차이를 int로 리턴함

 

2. ordinal() - 해당 enum상수의 ordinal을 리턴함.

 

3. name() - 상수명을 리턴함.

댓글