Java에서 상수 집합을 정의하는 특별한 데이터 타입. enum을 사용하면 관련된 상수 값을 그룹화하여 가독성과 안정성을 높일 수 있다.
enum은 new를 사용하여 객체를 생성 할 수 없다.
enum 인스턴스는 코드 상에서 처음 호출되거나 참조 될 때 생성한다.
타입 안전성: enum은 타입 안전성을 제공하므로, 잘못된 상수를 사용하는 것을 방지합니다.
주의 ordinal()은 가급적 사용하지 않는 것이 좋다.
열거형을 사용하는 경우 static import 를 적절하게 사용하면 더 읽기 좋은 코드를 만들 수 있다.
열거형 정리
public class Ex02 {
public static void main(String[] args) {
System.out.println(City.SEOLU);
System.out.println("전체 리스트");
for (City c : City.values()) {
System.out.println(c.getName() + " -> " + c.getCount());
}
}
}
enum City {
SEOLU("서울", 1000),
BUSAN("부산", 350),
INCHEON("인천", 3000);
private String name;
private int count;
// 생성자는 private 만 가능하며, private를 생략해도 private
private City(String name, int count) {
this.name = name;
this.count = count;
}
public String getName() {
return name;
}
public int getCount() {
return count;
}
@Override
public String toString() {
return this.name + " 인구 : " + this.count;
}
}