我在網上閱讀的關於Singleton設計模式的許多文章都提到,類應該重寫'clone()'方法,並在其中拋出'CloneNotSupported'異常。這真的有必要嗎?Singleton設計模式和防止克隆
默認情況下,clone()方法是受保護的,因此沒有類(除了那些在同一個包中的類)將能夠在該Singleton實例上調用它。另外,如果這個Singleton沒有實現Cloneable,那麼即使這個方法被調用,它也會給出一個運行時異常。另外,構造函數是私有的,我們將不能夠繼承它,從而允許它的克隆。那麼我是否應該爲我的Singleton類實現這個建議?
編輯:只是爲了澄清:我沒有尋找最好的方式來實現Singleton。我只是問上面提到的建議的有效性,w'r'是'正常的'Singleton模式(而不是基於Enum的Singleton模式)。
你問:「如果我創建單身走錯了路,我不應該做,應該我擔心X「。答案是以正確的方式讓你的問題沒有意義。不,你不必擔心這一點。 – 2012-02-16 14:47:17