Java 枚举知识点

枚举
定义:枚举就是把一切存在的可能都列举出来,指定其事物的范围
作用:枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译程序就会报错。枚举可以让编译程序在编译时就可以控制源程序填写的非法值,普通变量的方式在开发阶段无法实现
枚举是java中的一个特殊的类
在java枚举中每一个元素就是一个枚举类的实例对象
在枚举中也可以像普通java类一样有变量,构造函数,接口,抽象方法等,需要注意的是当一个枚举中存在了接口和抽象方法那么该枚举的实例(枚举中的元素)就必须实现该方法
在java5中还扩展了switch语句,switch也支持枚举类型
如果一个枚举中只有一个元素,那么可以把这个枚举当作一个单例模式来使在比较两个枚举的时候可以使用==或者equals,但是比较好的风格是使用==
枚举中可以有抽象,但必须在枚举值中实现

格式:
public enum WeekDay{sun,mon;}
注意:多个枚举元素用逗号隔开,末尾用分号结尾(如果下面没有方法就可以不使用分号结尾,不过为了代码的完整性,建议加上分号)
所有枚举都默认调用无参构成方法,如果需要指定在枚举后加()传递其参数指定(前提有多个重载构造函数)必须在元素列表之后定义变量和构造方法 构造方法必须是private修饰(其他方法也必须位于元素列表之后)

所有的enum对象都继承了ENUM类,ENUM类中定义一些常用的方法供使用:
name());//返回当前枚举名字
weekday.ordinal();//当前枚举的下标位置,从0开始
weekday.compareTo(weekday1); //比较此枚举与指定对象的顺序
WeekDay.valueOf("WED").toString();//将字符串变成枚举对象,前提是枚举中存在该对象(在实际开发中,当客户机传入可以字符串比如“男”,这个时候就要在服务端进行检测,这时就可以使用该方法就可以进行判断值是否合法,如果枚举中没有则抛出异常)
WeekDay.values().length;//返回该枚举数组的长度WeekDay.values()返回的是一个WeekDay[]
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值