본문 바로가기

객체 지향 프로그래밍 - 참조 타입

열거(Enum) 타입

한정된 값으로 이루어진 Enum 타입

  • 요일, 계절처럼 한정된 값을 갖는 타입
  • 먼저 열거 타입 이름으로 소스 파일(.java)을 생성하고 한정된 값을 코드로 정의
  • 열거 타입 이름은 첫 문자를 대문자로 하고 캐멀 스타일로 지어주는 것이 관례


    출처, 이것이 자바다


package ch05.sec12;

import java.util.Calendar;

public class WeekExample {

    public static void main(String[] args) {

        //열겨형은 참조타입이다.
        //스택영역 기억생성  : 힙영역에 생성된 주소를 저장하기위한 목적
        Week today= null;

        //날짜 관련 클래스
        Calendar cal = Calendar.getInstance();
        int week = cal.get(Calendar.DAY_OF_WEEK);

        switch(week) {
            case 1: today = Week.SUNDAY; break;
            case 2: today = Week.MONDAY; break;
            case 3: today = Week.TUESDAY; break;
            case 4: today = Week.WENEDSDAY; break;
            case 5: today = Week.THURSDAY; break;
            case 6: today = Week.FRIDAY; break;
             case 7: today = Week.SATURDAY; break;
        }

        if(today == Week.SUNDAY) {
            System.out.println("일요일에는 축구를 합니다.");
        }else {
            System.out.println("열심히 자바를 공부합니다.");
        }


    }

}

package ch05.sec12;

public enum Direction {
    EAST,
    WEST,
    SOUTH,
    NORTH
}

package ch05.sec12;

public class DirectionExample {

    public static void main(String[] args) {

        Direction direction = Direction.EAST;

        System.out.println(direction);

    }

}