php设计模式系列--单例模式

2018-01-16  本文已影响0人  贺兰丛丛
singleton.jpg

模式定义

单利模式(Singleton pattern): 确保某个类只有一个实例,而且自行实例化,并向整个系统提供这个实例

模式结构

UML 图


singleton_uml.png

代码示例

class singleton
{
private static $instance;

public static function getInstance()
{
    if(null === self::$instance){
        self::$instance =  new Singleton();
    }
    return self::$instance;
}
// 防止在类的外部被实例化 
private function __construct()
{
}
//防止被克隆
private function __clone()
{
}
// 防止被反序列化
private function __wakeup()
{
}
}

模式优点

模式的缺点

上一篇下一篇

猜你喜欢

热点阅读