这种写法是单例模式。单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。http://baike.baidu.com/view/1859857.htm

解决方案 »

  1.   

    构造函数是否为空,和实例化没有关系
    构造函数为空,只不过表示实例化时没有用户自定义动作。并且也不执行父类(如果有的话)的构造函数private function __construct(){}
    表示该类不能在外部实例化,私有方法只能在定义它的类里面访问
    在类外面 new Tpl
    将会有一个 Call to private Tpl::__construct() from invalid context 的致命错误这是单例模式的写法,但少了
    private function __clone(){}
    如果单例模式的对象能被克隆的话,就违背了单例的初衷对于你的这个类,单不单例已经没有意义了,因为他所有的属性和方法都是静态的
    因为静态的属性是在各实例间共享的