单例指仅仅被实力化一次的类。
public class Elvis { public static final Elvis INSTANCE = new Elvis(); private Elvis(){} public static Elvis getInstance(){ return INSTANCE; } } public enum Elvis { INSTANCE; public void leaveTheBuilding(){} }
以上第一段是Java1.5之前的单例,下面那段是1.5之后的枚举类的单例。其实2种都一样的而第二种更简洁,所以枚举是单例的最佳实现方式