一个简单枚举类的例子:
public enum Light{
RED(1),GREEN(3),YELLOW(2);
private int nCode;
private Light(int nCode){ //构造函数私有
this.nCode = nCode;
}
public String toString(){
return String.valueOf(this.nCode);
}
}
枚举类常用的方法:
valueOf方法:与toString相对应。
values方法:返回枚举量,可用于遍历所有枚举值。
ordinal方法:返回枚举值在枚举类中的顺序,根据枚举值声明的顺序确定。
使用枚举类型实现单例模式的例子:
package org.mlinge.s09;
public enum EnumFactory{
singletonFactory;
private MySingleton instance;
private EnumFactory(){//枚举类的构造方法在类加载是被实例化
instance = new MySingleton();
}
public MySingleton getInstance(){
return instance;
}
}
class MySingleton{//需要获实现单例的类,比如数据库连接Connection
public MySingleton(){}
}