当前位置:首页 > Java

java如何定义一个枚举类型

2026-02-05 11:05:09Java

定义枚举类型的基本语法

在Java中,枚举类型通过enum关键字定义,其语法结构如下:

public enum EnumName {
    CONSTANT1,
    CONSTANT2,
    // 更多枚举常量
}

枚举常量通常使用大写字母命名,多个常量之间用逗号分隔,最后一个常量后可以省略逗号。

添加字段和方法

枚举类型可以包含字段、构造方法和方法,实现更复杂的行为:

java如何定义一个枚举类型

public enum Color {
    RED("#FF0000"),
    GREEN("#00FF00"),
    BLUE("#0000FF");

    private String hexCode;

    // 枚举的构造方法必须是私有的
    private Color(String hexCode) {
        this.hexCode = hexCode;
    }

    public String getHexCode() {
        return hexCode;
    }
}

每个枚举常量调用构造方法初始化,字段和方法通过实例访问。

实现接口

枚举类型可以实现接口,为所有常量提供统一行为:

java如何定义一个枚举类型

public interface Displayable {
    void display();
}

public enum Status implements Displayable {
    ACTIVE {
        @Override
        public void display() {
            System.out.println("Running");
        }
    },
    INACTIVE {
        @Override
        public void display() {
            System.out.println("Stopped");
        }
    };
}

使用枚举

枚举类型通过常量名直接引用,常用方法包括:

  • values():返回所有枚举常量的数组
  • valueOf(String name):根据名称返回对应的枚举常量
  • ordinal():返回枚举常量的序数(声明位置)

示例:

Color red = Color.RED;
System.out.println(red.getHexCode()); // 输出 #FF0000

for (Status status : Status.values()) {
    status.display();
}

枚举的高级特性

枚举支持switch语句,可定义抽象方法强制每个常量实现特定逻辑:

public enum Operation {
    PLUS {
        public double apply(double x, double y) { return x + y; }
    },
    MINUS {
        public double apply(double x, double y) { return x - y; }
    };

    public abstract double apply(double x, double y);
}

标签: 定义类型
分享给朋友:

相关文章

react如何定义数据

react如何定义数据

React 中定义数据的常用方法 在 React 中,数据通常通过组件的状态(state)或属性(props)来定义和管理。以下是几种常见的方式: 使用 useState Hook 定义局部状态 适…

react如何定义整形变量

react如何定义整形变量

在React中定义整型变量 在React中,变量定义遵循JavaScript语法,JavaScript中没有严格的整型(integer)类型,所有数字都以浮点数(number)类型存储。可以通过以下方…

react如何定义一哥数组

react如何定义一哥数组

定义数组的方法 在React中,可以通过多种方式定义和使用数组。以下是常见的几种方法: 使用useState钩子定义状态数组 import { useState } from 'react';…

react如何定义一个map

react如何定义一个map

在 React 中定义和使用 Map React 中可以通过多种方式定义和使用 Map 对象,以下是常见的实现方法: 初始化 Map 对象 在组件中直接使用 JavaScript 的 Map 构造函…

react如何定义全局变量csdn

react如何定义全局变量csdn

React 中定义全局变量的方法 在 React 中,可以通过多种方式定义全局变量,以下是几种常见的方法: 使用 Context API Context API 是 React 提供的用于跨组件共享…

js类型实现

js类型实现

JavaScript 类型实现 JavaScript 是一种动态类型语言,其类型系统在运行时确定。以下是 JavaScript 中类型的实现方式: 原始类型(Primitive Types) Jav…