> Java > java지도 시간 > 본문

Java는 값과 설명을 구현하기 위해 Enum 클래스를 어떻게 정의합니까?

WBOY
풀어 주다: 2023-04-29 15:16:13
앞으로
1748명이 탐색했습니다.

값 획득 및 설명을 구현하기 위해 Enum 클래스 정의

C++ 및 Java와 같은 컴퓨터 프로그래밍 언어에서 열거 유형(Enum)은 변수에 대해 미리 정의된 상수 집합을 정의할 수 있는 특수 데이터 유형입니다. 열거형을 사용할 때 열거형 변수의 값은 미리 정의된 값 중 하나여야 합니다.

1. 클래스 키워드를 사용하여 구현된 열거형

JDK5 이전에는 Java 언어가 열거형을 지원하지 않았으며 클래스를 사용하여 열거형을 시뮬레이션하고 구현할 수만 있었습니다.

/** 订单状态枚举 */public final class OrderStatus {    /** 属性相关 */
    /** 状态取值 */
    private final int value;    /** 状态描述 */
    private final String description;    /** 常量相关 */
    /** 已创建(1) */
    public static final OrderStatus CREATED = new OrderStatus(1, "已创建");    /** 进行中(2) */
    public static final OrderStatus PROCESSING = new OrderStatus(2, "进行中");    /** 已完成(3) */
    public static final OrderStatus FINISHED = new OrderStatus(3, "已完成");    /** 构造函数 */
    private OrderStatus(int value, String description) {        this.value = value;        this.description = description;
    }    /** 获取状态取值 */
    public int getValue() {        return value;
    }    /** 获取状态描述 */
    public String getDescription() {        return description;
    }
}
로그인 후 복사

2. enum 키워드를 사용하여 구현된 열거 유형

JDK5는 Java의 열거 유형을 제공하여 제한된 명명된 값 세트를 새로운 유형으로 생성할 수 있습니다. 상수로 사용되는데 이는 매우 유용한 기능입니다.

/** 订单状态枚举 */public enum OrderStatus {    /** 常量相关 */
    /** 已创建(1) */
    CREATED(1, "已创建"),    /** 进行中(2) */
    PROCESSING(2, "进行中"),    /** 已完成(3) */
    FINISHED(3, "已完成");    /** 属性相关 */
    /** 状态取值 */
    private final int value;    /** 状态描述 */
    private final String description;    /** 构造函数 */
    private OrderStatus(int value, String description) {        this.value = value;        this.description = description;
    }    /** 获取状态取值 */
    public int getValue() {        return value;
    }    /** 获取状态描述 */
    public String getDescription() {        return description;
    }
}
로그인 후 복사

사실 Enum 유형은 구문 설탕이며 컴파일러는 구문을 구문 분석하고 컴파일하는 데 도움이 됩니다. 디컴파일을 통해 Java 열거형이 실제로 컴파일 후에 클래스를 생성하는 것을 볼 수 있는데, 이 클래스는 java.lang.Enum을 상속하고 value(), valueOf()와 같은 열거형 유형의 공통 메서드를 추가합니다.

위 내용은 Java는 값과 설명을 구현하기 위해 Enum 클래스를 어떻게 정의합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿