java8 enum_枚举类型

# 枚举类型

一个 枚举类型 是一种特殊的数据类型,使一个变量是一组预定义的常量。变量必须等于一个已经预定义的值。常见的例子包括罗盘方向(NORTH、SOUTH、EAST 和 WEST 的值)和一周的几天。

因为它们是常量,枚举类型的字段的名称是大写字母。

在 Java 编程语言中,您可以使用 enum 关键字定义枚举类型。例如,您将指定一个星期的枚举类型为:

任何时候您需要使用一组固定的常量来使用枚举类型。这包括自然枚举类型,例如我们的太阳系中的行星和数据集,您可以在编译时知道所有可能的值 - 例如菜单上的选项,命令行标志等。

以下是一些代码,显示如何使用上面定义 Day 的枚举:

程序输出

Java 编程语言枚举类型比其他语言的类型更强大。该 enum 声明定义一个类(称为枚举类型)。枚举类体可以包括方法和其他字段。当它创建一个枚举时,编译器会自动添加一些特殊的方法。例如,它们有一个静态 values 方法,它返回一个包含枚举所有值的数组,并按它们被声明的顺序。该方法通常与 for-each 结构组合使用以迭代枚举类型的值。例如,下面的 Planet 类示例中的代码遍历太阳系中的所有行星。

TIP

所有枚举都会隐式继承 java.lang.Enum。因为一个类只能继承一个父类(请参阅 声明类),所以 Java 语言不支持状态的多重继承(请参见 多重继承),因此枚举不能继承其他任何内容。

在以下示例中,Planet 是表示太阳系中行星的枚举类型。它们被定义为具有恒定的质量和半径属性。

每个枚举常数都被声明为质量和半径参数的值。当创建常量时,这些值将传递给构造函数。Java 要求在任何字段或方法之前首先定义常量。此外,当有字段和方法时,枚举常量的列表必须以分号结尾。

TIP

枚举类型的构造函数必须是包私有或私有访问。它会自动创建在枚举正文开头定义的常量。你不能自己调用​​枚举构造函数。

程序输出

虽然我不知道上面到底是在计算什么。但是枚举的用法就如上,和普通对象类似,只是不能在外部实例化。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值