自Java 5以来最好的单例模式

|| 从Java 5开始,据说创建单例的最佳方法是使用单元素枚举类型。 例:
public enum SuperSingleton implements Zooma{
    INSTANCE;

    /**
     */
    public void fightTheBattle(){
        System.out.println(\"I am fighting the battle!!!\");
    }

    @Override
    public void runningWild() {
        //This is method implemented from the Zooma interface.      
    }
}
根据Joshua Bloch的说法,单元素枚举类型单例是; 更简洁 免费提供序列化机制 并提供了防止多重实例化的能力。 我可以看到它更简洁,如何为多重实例化提供了坚实的基础, 但是它如何免费提供序列化机制? 单身人士会成为枚举对象吗?     
已邀请:
是的,Enums都是从实现
Serializable
Enum
类扩展而来的。     
我不确定100%,但是我认为,如果您对一个序列化的单例进行反序列化的次数更多,那么一次可能会遇到多个实例。枚举实例将始终保持单例状态。 因此,您将获得“更多序列化”,而不仅仅是实现序列化。     
http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Enum.html 是的:)     

要回复问题请先登录注册