A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唐宋元明清 中级黑马   /  2014-2-13 16:09  /  1282 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

张老师基础加强中的枚举我怎么就那么不理解呢?
枚举不是过时的迭代器么?????晕死了

评分

参与人数 1黑马币 +2 收起 理由
zzkang0206 + 2 淡定

查看全部评分

4 个回复

倒序浏览
本帖最后由 李金中 于 2014-2-13 16:21 编辑

枚举可以理解为类似"class"的一个东西, 你可以自己编写一个用class实现枚举的代码。
1.枚举值,可以理解为静态的常量成员。因为枚举值是通过 枚举类型 + . 实现的,比如:enum Week{Mon}, 枚举值为Week.Mon。class的静态成员不是就这么访问的么,而且枚举值不能修改,所以是final。
2.枚举类型的构造函数可以理解为 一个private修饰的函数,因为枚举值是不能new出对象的。
3.至于别的普通函数啊,普通成员变量啊,跟class一样的。

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
通俗的说枚举就是一个类似接口,里面放着一些固定的元素,某个类型的变量的取值只能为若干个固定的值,以方便我们的使用,比如说星期这个问题 ,sunday,为了固定取值,我们就把它对应的数值设置为6,下次再使用的时候,我们就不会把sunday的值设置为其他对应的数字了
回复 使用道具 举报
枚举类似于一个接口 这个东西的好处的个人认为就是大大提高了
switch case的语句类型 因为不使用枚举的时候 可以说用到枚举的时候用的范围是很狭隘的
有了枚举 就解决了这点 这个在张老师高新技术的交通灯里面都有写到
还有就是出现了枚举集合 枚举里面还可以添加方法
回复 使用道具 举报
枚举就是要让某个类型的变量的取值只能为若干个固定值中的一个,否则,编译器就会报错。枚举可以让编译器在编译时就可以控制源程序中填写的非法值,普通变量的方式在开发阶段无法实现这一目标。

在我的理解中我感觉枚举是非常好用的一个东西,而且很方便,还不容易出现错误,
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马