java中的声明枚举,详细解析

BSO 2020-10-28 16:26:46 java常见问答 4325

随着科学技术水平的不断进步与发展,人们对于新知识的渴求也越来越明显。尤其是对于java编程语言的学习更是越发积极。今天就来为大家介绍一下,java中的声明枚举,并且详细解析。一起来了解一下吧。

首先为大家解释一下枚举的概念。

枚举是一个被命名的整型常数的集合,用于声明一组带标识符的常数。枚举在曰常生活中很常见,例如一个人的性别只能是“男”或者“女”,一周的星期只能是7天中的一个等。类似这种当一个变量有几种固定可能的取值时,就可以将它定义为枚举类型。

在 JDK1.5之前没有枚举类型,那时候一般用接口常量来替代。而使用Java枚举类型enum可以更贴近地表示这种常量。

然后介绍一下声明枚举

声明枚举时必须使用enum关键字,然后定义枚举的名称、可访问性、基础类型和成员等。枚举声明的语法如下,代码如下所示:

enum - modifiers enum enumname: enum - base
{
    enum - body
, }

其中,enum-modifiers表示枚举的修饰符主要包括public、private和internal;enumname表示声明的枚举名称;enum-base表示基础类型;enum-body表示枚举的成员,它是枚举类型的命名常数。

任意两个枚举成员不能具有相同的名称,且它的常数值必须在该枚举的基础类型的范围之内,多个枚举成员之间使用逗号分隔。

需要注意的是,如果没有显式地声明基础类型的枚举,那么意味着它所对应的基础类型是int

举例说明:

下面代码定义了一个表示性别的枚举类型SexEnum和一个表示颜色的枚举类型Color,代码如下所示:

public enum SexEnum
{
    male
    , female;
}
public enum Color
{
    RED
    , BLUE
    , GREEN
    , BLACK;
}

之后便可以通过枚举类型名直接引用常量,如SexEnum.male、Color.RED。

使用枚举还可以使switch语句的可读性更强,代码如下所示:

enum Signal
{
    //定义一个枚举类型
    GREEN
    , YELLOW
    , RED
}
public class TrafficLight
{
    Signal color = Signal.RED;
    public void change()
    {
        switch (color)
        {
        case RED:
            color = Signal.GREEN;
            break;
        case YELLOW:
            color = Signal.RED;
            break;
        case GREEN:
            color = Signal.YELLOW;
            break;
        }
    }
}

以上就是关于java中的声明枚举的详细解析了。如果你对java知识感兴趣,想要了解更多java基础知识,敬请关注奇Q工具网。

推荐阅读:

java枚举中实现接口和使用接口,实例展示

java枚举中常量和switch的用法,实例分享

java枚举(enum)详解,为枚举添加方法