zoukankan      html  css  js  c++  java
  • Java 枚举 的学习

     在JDK5.0之后,引进了一种与C语言相通的枚举类型. 所谓枚举类型就是指含有一组具有固定值, 并且容量有限的数据集合.

    例如,定义一个星期的枚举类型, 从周一到周日是具有固定大小和固定值的集合

    public enum Week{
    		Monday ,
    		Tuesday,
    		Wednesday,
    		Thursday,
    		Friday,
    		Saturday,
    		Sunday
    	}
    可以这样引用枚举中的数据: 

    Week w = Week.Friday;
    System.out.println(w);
    此外, 枚举类型还有2个静态方法  values() 和valuesOf() ; 

    for (Week w2 : Week.values()) {
       System.out.println(w2);
    }
    values()方法,返回一个包含全部枚举值的数组;

    valueOf()是toString 的逆方法, Week tuesday = Enum.valueOf(Week.class, "Tuesday"); 将tuesday 设置成 Week.Tuesday.


    更多参考 JDK API 

    构造方法摘要
    protected Enum(String name, int ordinal)
          单独的构造方法。
     
    方法摘要
    protected  Object clone()
              抛出 CloneNotSupportedException。
     int compareTo(E o)
              比较此枚举与指定对象的顺序。
     boolean equals(Object other)
              当指定对象等于此枚举常量时,返回 true。
    protected  void finalize()
              枚举类不能有 finalize 方法。
     Class<E> getDeclaringClass()
              返回与此枚举常量的枚举类型相对应的 Class 对象。
     int hashCode()
              返回枚举常量的哈希码。
     String name()
              返回此枚举常量的名称,在其枚举声明中对其进行声明。
     int ordinal()
              返回枚举常量的序数(它在枚举声明中的位置,其中初始常量序数为零)。
     String toString()
              返回枚举常量的名称,它包含在声明中。
    static
    <T extends Enum<T>>
    T
    valueOf(Class<T> enumType,String name)
              返回带指定名称的指定枚举类型的枚举常量。

     

  • 相关阅读:
    枚举类 --单例模式
    模板设计模式
    动态代理
    反射应用--修改属性值
    通过反射绕过泛型
    java反射
    网络编程练习
    TCP编程
    GUI 聊天界面
    UDP传输多线程
  • 原文地址:https://www.cnblogs.com/aikongmeng/p/3697323.html
Copyright © 2011-2022 走看看