>  기사  >  Java  >  Java 열거형 클래스의 기본 사용법

Java 열거형 클래스의 기본 사용법

PHPz
PHPz앞으로
2023-05-08 18:04:081463검색

1. 열거형 규칙

  • 열거형 클래스의 개체는 클래스에서 정의할 수 있으며, 새로운 개체는 지원되지 않습니다.

  • 열거형 클래스에는 생성자가 있으며 다른 클래스도 동일하며 여러 메서드를 가질 수 있습니다

  • 열거형 클래스의 생성자는 비공개여야 하며 멤버 변수는 공개 또는 비공개일 수 있습니다

이유: 열거형 클래스의 생성자는 다른 새 메서드가 지원되지 않기 때문에 이 클래스에서만 호출할 수 있습니다. 자연 생성자는 비공개입니다

코드 예:

package com.meijulei;
//枚举类
public enum Cat {
    A("小明",12),B("小花",22),C("小红",23),D("小蓝",30),E("小绿",20),F("小黄",32);
    public String name;
    private int age;
    private Cat(){
    }
    private Cat(String a,int b){
        name=a;
        age=b;
    }
    public void m1(){
        System.out.println("姓名为:"+name+",年龄为:"+age);
    }
}
//调用
package com.meijulei;
import com.meijulei.Cat;
public class Test {
    public static void main(String[] args) {
        Cat a=Cat.A;
        a.m1();
    }
}

2. 열거 수

참고: 열거 수는 열거 클래스에 선언된 힙의 수를 나타냅니다. 객체 수

Java 열거형 클래스의 기본 사용법

3. 열거형 클래스에서 자주 사용되는 함수

**Cat.C.ordinal()** 함수, 해당 객체가 열거형 클래스에 어떤 객체인지 계산합니다(0에서 계산됨) Cat.C.compareTo(Cat.E) 두 개체의 차이를 계산하여 후자에서 전자를 뺍니다.

A("小明",12),B("小花",22),C("小红",23),D("小蓝",30),E("小绿",20),F("小黄",32);
		System.out.println(Cat.E.ordinal());
        System.out.println(Cat.C.compareTo(Cat.E));

//output
//4
//-2

4. 열거형 클래스 구현

다음으로 간단한 DEMO 예제를 살펴보겠습니다. :

/**
 * java枚举
 */
public class Enum {
    public static void main(String[] args) {
        System.out.println(Season.SPRING);
        System.out.println(Season.SUMMER);
        System.out.println(Season.AUTUMN);
        System.out.println(Season.WINTER);
    }
}

// 定义的枚举类
enum Season {
    // 枚举定义的常量对象必须在最前面
    SPRING("春天","万物复苏"),
    SUMMER("夏天","烈日炎炎"),
    AUTUMN("秋天","硕果累累"),
    WINTER("冬天","寒冷刺骨");

    private String name;
    private String desc;

    private Season(String name, String desc) {
        this.name = name;
        this.desc = desc;
    }

    public String getName() {
        return name;
    }

    public String getDesc() {
        return desc;
    }

    @Override
    public String toString() {
        return "Season{" +
                "name='" + name + '\'' +
                ", desc='" + desc + '\'' +
                '}';
    }
}

출력:

Season{name='봄', desc='만물회복'}
Season{name='Summer', desc=' 태양이 뜨겁다'}
Season{name=' fall', desc='fruitful'}
Season{name='winter', desc='cold'}

5. 열거형 클래스 사용 시 주의사항

enum 키워드를 사용하여 열거형 클래스를 개발할 때 Eunm은 클래스는 기본적으로 상속되며 최종 수정된 클래스입니다

매개변수 없는 생성자를 사용하는 경우 열거형에서 괄호를 직접 생략할 수 있습니다

// 枚举定义的常量对象必须在最前面
SPRING("春天", "万物复苏"),
SUMMER("夏天", "烈日炎炎"),
AUTUMN("秋天", "硕果累累"),
WINTER("冬天", "寒冷刺骨"),
Other, Shit;

Season() {
}

private Season(String name, String desc) {
    this.name = name;
    this.desc = desc;
}

위 내용은 Java 열거형 클래스의 기본 사용법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제