우와한 개발자

[Java] Enum 클래스

by 우와한개발자

1. Enum 이란?

  • enum은 java 5에서 도입된 열거형 타입으로, 고정된 상수들의 집합.
  • public static final int로 선언하던 상수 집합을 Type-safety하게 되도록 설계.
public enum 이름 {
	상수1(값), 상수2(값), ...;

	//	필드	선언
	private	타입	필드명;
	
	//	생성자
	private	enum이름(타입	파라미터) {
		this.필드명	=	파라미터;
	}
	
	//	메서드	선언
	public 반환타입 메서드명() {
				//	로직
	}
}
  • 클래스처럼 필드,메서드(추상메서드 포함), 생성자를 선언할 수 있지만 일반적으로는 상수들만 선언해서 사용함.
enum Day {
    MON, TUE, WED, THU, FRI, SAT, SUN
}

public class Main {
    public static void main(String[] args) {
        Day d = Day.MON;

        if (d == Day.MON) {
            System.out.println("월요일");
        }
    }
}

 

2. Enum 의 장점

  • Type safety : 특정한 열거형 타입을 명확히 지정하기 때문에 다른 타입이나 값을 잘못 전달하는 오류 방지
  • 코드 가독성 및 유지보수 향상

블로그의 정보

우와한개발자 님의 블로그

우와한개발자

활동하기