zoukankan      html  css  js  c++  java
  • 单例模式示例

    单例模式

    <?php
    
    class Single
    {
        private $name;//声明一个私有的实例变量
    
        private function __construct()
        {
            //声明私有构造方法为了防止外部代码使用new来创建对象。
        }
    
        static public $instance;//声明一个静态变量(保存在类中唯一的一个实例)
    
        static public function getinstance()
        {//声明一个getinstance()静态方法,用于检测是否有实例对象
            if (!self::$instance) {
                self::$instance = new self();
            }
            return self::$instance;
        }
    
        public function setname($n)
        {
            $this->name = $n;
        }
    
        public function getname()
        {
            return $this->name;
        }
    }
    
    
    $oa = Single::getinstance();
    $ob = Single::getinstance();
    $oa->setname('hello world');
    $ob->setname('good morning');
    echo $oa->getname();//good morning
    echo $ob->getname();//good morning
    
    Class Person
    {
        private $name;
    
        private function __construction()
        {
            //防止new
        }
    
        static public $instance;
    
        /**
         * @return mixed
         */
        public static function getInstance()
        {
            if (!self::$instance) {
                self::$instance = new self;
            }
            return self::$instance;
        }
    
        public function setName($name)
        {
            $this->name = $name;
        }
    
        /**
         * @return mixed
         */
        public function getName()
        {
            return $this->name;
        }
    
    }
    
    $in = Person::$instance;
    var_dump($in);
    $p1 = Person::getInstance();
    $p1->setName('dddd');
    $p2 = Person::getInstance();
    $p2->setName('333  ');
    echo $p1->getName();
    echo $p2->getName();
    
  • 相关阅读:
    Hibernate映射Map属性2
    Ajax向Controller发送请求并接受数据需要注意的一个细节
    设置 jsp 表格相邻两行的颜色不一样
    Hibernate映射Map属性
    自己写的爬虫
    在一个jsp页面中引用另一个jsp文件的路径的问题
    state设计原则
    项目图标库怎样选择
    一些有用的插件
    Hook
  • 原文地址:https://www.cnblogs.com/cs88/p/6344937.html
Copyright © 2011-2022 走看看