zoukankan      html  css  js  c++  java
  • php 设置模式 单元素模式(单例模式或单件模式)

    单元素模式:

             某些应用程序资源是独占的,因为有且只有一个此类型的资源。应用程序每次包含且仅包含一个对象,那么这个对象就是一个单元素。指的是在应用程序的范围内只对指定的类创建一个实例。通常该模式中包含一个私有构造方法,用来确保用户无法通过创建对象或者克隆的方式对其进行实例化。除此以外,该模式中还包含一个私有静态属性与公有静态方法。公有静态方法负责对其本身实例化,然后将这个对象存储在私有静态属性中,用来确保只有一个实例被创建。

    单元素模式例子:

    /**
     *私有构造方法__contruct()用来确保Sing类无法通过创建对象或克隆的方式对其进行实例化
     *只能通过公有静态方法getInter()生成一个该类的实例并且存储在私有静态属性$Sing_class中。
     */
    class Sing{
        private static $Sing_class=null;
        private static $name;
        private function __construct(){
            self::$name++;
        }
        public static function getInter(){
            if(self::$Sing_class==null){
                return new Sing();
            }
            return self::$name;
        }
        public function getName(){
            echo self::$name;
        }
    }
    $test= Sing::getInter();
    $test->getName();
    echo "<br />";  
    $test1= Sing::getInter();
    $test1->getName();
    echo "<br />";  
    $test3= Sing::getInter();
    $test3->getName();
    



  • 相关阅读:
    ngx_lua_waf
    一致性hash算法
    BloomFilter理解
    SkipList理解
    es中的一些知识点记录
    普通类、抽象类和接口区别:
    spring中的事件 applicationevent 讲的确实不错(转)
    CMS和G1的区别,以及Parallel
    SpringBoot优化内嵌的Tomcat ---设置MaxConnections
    tomcat启动nio,apr详解以及配置
  • 原文地址:https://www.cnblogs.com/sztx/p/9499757.html
Copyright © 2011-2022 走看看