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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 奋发吧小白 高级黑马   /  2014-9-3 19:12  /  591 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

枚举是JDK1.5出现的新特性;
枚举也是一种类,只是不是用关键字class修饰的类,而是用enum关键字修饰的类。这一点就可以体现出枚举是一种特殊的类。下面由我说一下为什么说枚举是一种特殊的类。
1:我认为枚举的由来
首先在我现有的基础上,我认为枚举就是为了给外部提供一些特定的元素,外部引用除了枚举类内部提供的对象,不能再使用其他的方法,并且还不能通过枚举类创建对象(有点像单例哈)
2:因为不能创建对象,大家应该也猜到既然是类,但是又不能创建对象,则枚举的构造函数一定是私有的。确实,枚举的构造函数默认必须是私有的。
3:枚举构造函数的另一个特点,就是必须在枚举元素列表之下,这有区别于其他普通类的构造函数可以放在类的任意位置。这也是特殊之处。
4:对象,枚举的对象列表(元素列表),当有多个对象时之间用“,”隔开,若是此枚举类只有对象类表,则最后可以不写分号:如下:

enum Demo{          obj1,obj2,obj3,obj        }
若是后面还有构造参数,则必须写上分号,如下:

enum Demo{          obj1,obj2,obj3,obj;        private enum Demo();        }5:枚举类的对象默认为静态的,可以直接类名.对象名 直接调用。
6:枚举不能继承

暂时总结这些~不对之处请指正哈!

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马