當PHP創建一個Singleton,我保證它無法通過執行以下操作來實例化:在PHP中創建單例時,我可以使用抽象類而不是私有__construct()嗎?
class Singleton {
private function __construct() {}
private function __clone() {}
public static function getInstance() {}
}
但是,我意識到,定義一個類爲「抽象」意味着它不能被實例化。那麼,有什麼不好做,而不是以下:
abstract class Singleton {
public static function getInstance() {}
}
第二個場景讓我寫更少的代碼這將是很好的。 (並不是說它實際上有很大的區別)。
酷,不知道在PHP中的抽象,它與PHP5出臺,那些傢伙不要浪費時間了,一直在增加新的酷功能。感謝和+1發佈這樣一個有趣的問題。 – 2010-03-28 14:44:27
@Marco PHP 5自7年前的2004年7月以來一直在運行。不是一個真正的新功能。 – stefgosselin 2011-07-04 22:10:02