枚举
(1)、用普通类模拟枚举功能。用weekDay的类来模拟
私有的构造方法
每个元素分别用一个公有的静态成员变量表示
可以有若干公胡方法或抽象方法,例如,要提供nextDay()方法必须是抽象的。采用抽象方法定义nextDay()就将大量的if else语句转移成了一个个独立的类
代码例子:
下面,通过枚举类,实现相同的功能
a、什么是枚举,枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错,枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量在开发阶段无法实现这一目标。
b、可以将枚举类型看作一个类,它继承于java.lang.Enum类,当定义一个枚举类型时,每一个枚举类型成员都可以看作是枚举类型的一个实例。这些枚举成员都默认被final, public, static所修饰,所以可以直接用枚举类型名直接调用枚举类型成员。
c、枚举类型中可以定义构造方法,成员变量,变通方法和抽象方法,枚举元素必须位于枚举体中的最开始的部分,枚举元素列表要有分号与其他成员分隔。把枚举中的成员方法或变量等放在枚举元素的前面,编译器会报错。
常用的方法:
values():以数组的形式返回枚举类型成员
valueOf():将普通字符串转换为枚举类型实例
compareTo():比较两个枚举对象在定义时的顺序
ordinal():获得枚举成员的位置索引
d、枚举类型的构造方法:
枚举类型的构造方法必须为private修饰,
多个构造方法,怎么选择调用哪个构造方法的?若要调用构造方法,可以在定义枚举成员变量时,指定其构造方法的参数,系统会根据参数类型自动去调用相应的构造方法。
枚举元素MON和MON()的效果一样,都是调用默认的构造方法。
e、普通方法
可以通过枚举成员调用。和普通类调用形式一样
分享到:
相关推荐
java 枚举 学习心得
入门者,不错的枚举学习资料,枚举,emun学习小结
数学广场列表枚举学习教案.pptx
java枚举学习.doc
C结构体共同体和枚举学习教案.pptx
对枚举的简单实用,进行了演示,在博客中有相关文档进行了枚举详细的讲解
java enum详细教程。由浅入深,包括基本语法方面..很适合新手学习。/n各位看官。绝对超值。
USB HID学习实例之如何枚举为键盘鼠标
主要给大家介绍了关于如何通过Objective-C的枚举学习iOS中位操作.md的相关资料,文中通过示例代码介绍的非常详细,对各位iOS开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
数学广场列表枚举PPT学习教案.pptx
第十二课 枚举学习目录数字枚举字符串枚举反向映射一.数字枚举枚举可以让我们定义一些带名字的常量,使用枚举可以构建一组有区别的用例。二.字符串枚举字符串枚举的用法
C#数据类型,数组、结构和枚举是学习C#的基础!
共用体与枚举类型是c语言的重要内容之一,由于授课时间 的安排原因,学生的重视程度不够,所以有些学生掌握的不是很扎实,这里有关于共用体与枚举类型的学习课件,希望能给一些同行带来用处!
本文向大家介绍了如何用查询方式来学习枚举过程的方法
java enum枚举教程学习资料
USB_HID_学习实例之如何枚举为键盘
列表枚举PPT学习教案.pptx
我想几乎每一个学习Java语言的人在学习枚举的时候首先的一个疑问就是“为什么不用static final字段替代?”,有这个疑问就说明你已经摸索到了枚举类型的最主要功能......
枚举+枚举类+定义和使用+学习 - 本资源介绍了枚举的基本概念,以及如何用Java定义和使用枚举类,包括实现接口,重写方法,使用switch,比较枚举等。
关于枚举的小小类型,学习枚举的校资料。请多多指教