JAVA 열거형(enum) 에 대해 알아보자

hyoJeong·2021년 8월 9일
0

자바공부

목록 보기
1/1
post-thumbnail

열거형은 자바 5에서 추가된 자료형이다.
열겨형은 '의미가 부여된 이름'을 갖는 상수의 선언에 그 목적이 있다.!!!

  • 인터페이스 기반의 상수 정의
    (enum 자료형이 나오기 전 의미가 부여된 이름을 갖는 상수는 어떻게 선언했을지 먼저 확인해보자!!!)

    인터페이스 내 선언된 상수는 public final static 이 선언된 것으로 간주
    이렇게 사용할 경우 문제가 생긴다.
    어떤 문제일까? 밑에서 확인해보자!

  • 인터페이스 기반으로 의미가 부여된 이름의 상수를 정의할 경우 생기는 문제점

    밑의 what는 꽃의 종류를 확인하기 위해 만들어진 함수이다.
    하지만 날씨의 이름이 부여된 이름의 상수 변수또한 what 함수를 호출하면 라벤더라는 꽃의 종류가 나오게 된다.
    이런 문제를 해결하기 위해 나온것이 enum 즉 열거형이다.

*위의 문제를 해결한 enum으로 작성한 코드

위의 코드를 보면 Flower 이 enum 즉 열거형으로 선언되었고 Flower 안에 LAVENDER,ROSE 라는 열거형 값이 선언된 것을 볼수 있다.
이렇게 열거형은 Flower sc=Flower.LAVENDER 으로 참조변수를 선언할 수 있다.
Flower 이라는 열거형의 참조변수는 Flower 열거형 내에 선언된 열거형 값만 대입가능하다.
what이라는 함수를 보면 Flower 이라는 열거형 참조변수로 swithch 문을 구성한것을 볼 수 있다.
이렇게 할경우 Weather wc는 Weather 타입이기 때문에, what함수의 매개변수로 불가능하다.
그리고 열거형이 switch 문을 구성할 경우, 열거형 값의 이름만 명시하기로 되어있다.

0개의 댓글