枚举是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:枚举不能继承
暂时总结这些~不对之处请指正哈!
|