欢迎访问文稿网!

枚举类型继承的方法

范文之家 分享 时间: 加入收藏 我要投稿 点赞

枚举类型继承的方法

    6.6.2 枚举类型继承的方法

    枚举类型实际上是java.lang.Enum的子类。这意味着枚举类型从java.lang.Enum类中继承了许多有用的方法。主要有:

    (1)public final String name():返回此枚举常量的名称。与此方法相比,大多数程序员应该优先考虑使用toString()方法,因为toString()方法返回用户更加友好的名称。

    (2)public StringtoString():返回枚举常量的名称,它包含在声明中。可以重写此方法,以便为枚举常量提供更加友好和直观的表示。

    (3)public final int ordinal():返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。

    (4)public final booleanequals(Object other):当指定对象other等于此枚举常量时,返回true。

    (5)public final int compareTo(E o):比较此枚举常量与指定对象o的顺序。在该对象小于、等于或大于指定对象o时,分别返回负整数、零或正整数。枚举常量只能与相同枚举类型的其他枚举常量进行比较。

    (6)public static EvalueOf(String name):返回带指定名称的指定枚举类型的枚举常量。名称必须与在此类型中声明枚举常量所用的标识符完全匹配(不允许使用额外的空白字符)。其中,name是要返回的常量名称;E是指该枚举类型。该方法是与toString()方法相对应的。

    (7)public static E[]values():返回包含该枚举类型所有常量的数组,各枚举常量按定义时的顺序排列,其中E指该枚举类型。

    注意:枚举类型是继承java.lang.Enum类的子类。由于Java不支持多重继承,所以,枚举类型不能扩展任何其他类。

    【例6-9】 遍历枚举类型的所有枚举常量,输出各枚举常量的序号和名称。

    img399

    程序执行结果:

    0-RED 1-BLUE 2-GREEN

    思考与分析:(1)要遍历所有枚举常量,首先要通过Color[]colors=Color.values();语句建立所有枚举常量的数组。values()方法是静态的,所以要类名Color引用该方法。

    (2)for(Color c:colors)为增强for语句。相当于for(int i=0,c=colors[i];i<colors.length;i++,c=colors[i]){}。该增强for语句可写成for(Color c:Color.values())。

    增强for语句的一般形式是:

    for(类型变量名:集合或数组){语句}

    模仿例6-9:编程实现遍历枚举类型一个星期七天的所有枚举常量。

221381
领取福利

微信扫码领取福利

微信扫码分享