Jin's Dev Story

[SpringBoot] enum Class (열거형) 본문

Web & Android/SpringBoot

[SpringBoot] enum Class (열거형)

woojin._. 2023. 10. 14. 09:54

enum 클래스

연관된 상수들을 원소로 갖는 집합 개념의 클래스

// enum 클래스의 예

public enum ItemSellStatus {
    SELL, SOLD_OUT
}

public enum Week {
   	MONDAY, TUSEDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY
}

public enum Gender {
	MALE, FEMALE
}

enum 클래스 필요 상황

1. enum 클래스 사용 전

  • gender1 이라는 변수에는 "MALE", "FEMALE" 값만 저장되도록 설계했다고 가정
public class EnumExam {
        public static final String MALE = "MALE";
        public static final String FEMALE = "FEMALE";

        public static void main(String[] args) {
            String gender1;

            gender1 = EnumExam.MALE;
            gender1 = EnumExam.FEMALE;                  
        }
    }
  • gender1 변수는 String 타입이기 때문에 아래 코드도 정상적으로 수행됨 (그러나 의도와 벗어남)
gender1 = "Boy";

2. enum 클래스 사용

  • Gender 타입 (enum)의 변수에는 MALE 또는 FEMALE만 대입가능 (컴파일 시 체크)
  • 한정된 값만을 사용하기 위함
enum Gender{
        MALE, FEMALE;
    }

Gender gender2;

gender2 = Gender.MALE;
gender2 = Gender.FEMALE;

    //Gender타입의 변수에는 MALE이나 FEMALE만 대입이 가능. 다른 값은 저장할 수가 없다.

'Web & Android > SpringBoot' 카테고리의 다른 글

[SpringBoot] ResponseEntity  (0) 2023.10.14
[SpringBoot] Entity  (0) 2023.10.14
[SpringBoot] Bootstrap  (0) 2023.10.14
[SpringBoot] Spring Boot Devtools  (0) 2023.10.14
[SpringBoot] 파일 경로 설명  (0) 2023.10.14