Java枚举和Java内部类

Java枚举是一个特殊的类,一般表示一组常量。Java 枚举类使用 enum 关键字来定义,各个常量使用逗号 ,来分割。每个枚举都是通过Class在内部实现的,而且所有的枚举值都是public static final 的
可以使用 for 语句来迭代枚举元素
枚举类型相当于特殊的类,经过编译之后同样产生一个class文件。枚举类型中可以定义方法(包括构造 方法)、属性、静态的方法和属性、继承接口、重载覆盖等,类似于class。
枚举类型的定义:
在这里插入图片描述

enum 定义的枚举类默认继承了 java.lang.Enum 类,并实现了 java.lang.Seriablizable 和 java.lang.Comparable 两个接口,又因为Java是单继承的,所以一个枚举类型不 能继承任何其他的类。
values(), ordinal() 和 valueOf() 方法位于 java.lang.Enum 类中:
values() 返回枚举类中所有的值。
ordinal()方法可以找到每个枚举常量的索引,就像数组索引一样。
valueOf()方法返回指定字符串值的枚举常量。
枚举类成员:枚举跟普通类一样可以用自己的变量、方法和构造函数,构造函数只能使用 private 访问修饰符,所以外部无法调用。枚举既可以包含具体方法,也可以包含抽象方法。 如果枚举类具有抽象方法,则枚举类的每个实例都必须实现它
枚举类型的构造方法: 必须是private访问权限,不能使public权限。这样就可以保证在枚举类型定义的外部无法使用new 来创建枚举值。 使用构造方法(当然是带参数的构造方法)赋值,则必须给所有的枚举值赋值&

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值