상세 컨텐츠

본문 제목

enum 매핑

java

by nownow 2025. 2. 28. 20:28

본문

enum에 한글을 지정하거나 데이터 타입 호환성을 위해 다른 상수를 추가로 지정할 수 있다.

public enum EnumDay {
    SPRING("봄"),
    SUMMER("여름"),
    WINTER("겨울");
    private String season;
    private EnumDay(String season){
        this.season=season;
    }
    public String KOSeason(){
        return season;
    }
}
public class Main {
    public static void main(String[] args) {
        EnumDay day =EnumDay.SUMMER;
        System.out.println(day); //SUMMER
        System.out.println(day.KOSeason()); //여름
    }
}

enum은 내부적으로는 private static final 객체 = new 객체(); 와 같은 식으로 구성되어 있기에

클래스 로딩시 정적 불변 클래스로 생성된다.

또한 enum의 생성자는 암묵적으로 private 이기에 각 상수가 단일 인스턴스로 유지되고

생성자에서 필드 값을 초기화해주면 추가 메서드를 통해 맵핑해둔 다른 값을 불러올 수 있다.

관련글 더보기