java中枚举

来源:互联网 发布:网络炒作事件 编辑:程序博客网 时间:2024/06/08 01:15

在2005年之后增加了枚举,它的功能与多例设计模式基本上一样。在JAVA中用enum来定义一个类,相当于这个类继承了Enum类,Enum这个的构造方法是私有的,定义如下:

如何证明这个是Enum类的继承:

在上面的代码中,我们可以调用不是在Color中定义的方法ordinal()与name()的方法,说明用它们具有继承关系。

在多例设计模式中我们可以在类中定义方法与方法等,枚举也可以,但是有要求:

1 枚举中的定义的构造方法不能够使用public声明:

2 枚举对象必须放在道行,随后才可以定义属性、构造方法、普通方法。

扩充枚举:

此时与多例设计模式操作方式完全相同,而且更加简单。

枚举实现接口:因为它可以看作是一个类,所以它可以像变通类那样来实现接口,这里不多介;我们现在在每一个对象后面使用匿名内部类的形式来实现接口:

枚举中定义抽象方法:

它的实现与使用匿名内部类的形式来实现接口差不多,还是每个单独实现。