黑马程序员技术交流社区

标题: 枚举类和普通类有什么区别啊 [打印本页]

作者: wangkerui    时间: 2014-6-26 17:45
标题: 枚举类和普通类有什么区别啊
本帖最后由 wangkerui 于 2014-6-29 09:30 编辑

枚举类和普通类的区别谁知道啊,越详细越好,做好有实例啊,求指导!

作者: luojunwei1992    时间: 2014-6-26 17:58
枚举类与普通类的区别:
1.枚举类默认继承了Enum类,而不是继承Object类。普通类继承的Object类。
2.枚举类的构造器只能使用private修饰。
3.枚举类实例只能显示给出,否则永远不能产生实例,列出这些实例时,系统会自动添加public static final修饰。

枚举类的的对象是有限而且固定的。比如,性别,只有男女之分
作者: 燿陚√揚葳    时间: 2014-6-26 18:04
枚举中的变量只能为若干个固定值中的一个,普通的类变量只要需要可以写很多,枚举类可以有效地控制源程序中填写的非法值,而普通类中的变量就无法
实现了。而且枚举中的变量不可以重复。

书写上也有很多不同之处:
当枚举中有其他方法时要放在元素列表的后面,并且枚举的构造函数必须用private来修饰,在元素列表后面如果没有其他方法,那么可以不写“;”
如果有那么必须写了
如:
enum Week{
Sun,Mon,Tue;
private Week(){}
}

作者: 马到成功2014    时间: 2014-6-26 18:56
枚举类就是特殊的类  记住它特性就好
1.第一行定义必须是枚举值,大写。
2.构造方法只供枚举值访问,所以修饰符为private
3.其定义的abstract抽象方法,枚举值必须要继承。
所以在其他类中调用只能取你定义的固定值。

作者: 小周务商    时间: 2014-6-26 23:02
枚举是一个特殊的类。里面的值是固定的。每个枚举值就相当于一个对象。
作者: wangkerui    时间: 2014-6-27 16:55
马到成功2014 发表于 2014-6-26 18:56
枚举类就是特殊的类  记住它特性就好
1.第一行定义必须是枚举值,大写。
2.构造方法只供枚举值访问,所以修 ...

Thank you.........
作者: wangkerui    时间: 2014-6-27 16:56
luojunwei1992 发表于 2014-6-26 17:58
枚举类与普通类的区别:
1.枚举类默认继承了Enum类,而不是继承Object类。普通类继承的Object类。
2.枚举类 ...

Thank you.........
作者: wangkerui    时间: 2014-6-27 16:57
燿陚√揚葳 发表于 2014-6-26 18:04
枚举中的变量只能为若干个固定值中的一个,普通的类变量只要需要可以写很多,枚举类可以有效地控制源程序中 ...

Thank you.........




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2