一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - php設計模式之單例模式使用示例

php設計模式之單例模式使用示例

2020-06-06 15:37PHP教程網 PHP教程

單例模式也就是只能實例化一次,也就代表在實例化時不可能使用new關鍵字,下面是使用示例,大家參考使用吧

以下為單例模式代碼:
 

復制代碼 代碼如下:


<?php
class EasyFramework_Easy_Mysql{
    protected static $_instance = null;
    private function __construct(){

    }
    public static function getInstance(){
        if (self::$_instance === null){
            self::$_instance = new self();
        }
        return self::$_instance;
    }

    protected function __clone(){

    }

}

 

$x = EasyFramework_Easy_Mysql::getInstance();

var_dump($x);


?>


/*
 * 1.第一步:
 * 既然是單例,也就是只能實例化一次,也就代表在實例化時
 * 不可能使用new關鍵字!!!!
 * 在使用new關鍵字時,類中的構造函數將自動調用。
 * 但是,如果我們將構造函數的訪問控制符設置為protected或private
 * 那么就不可能直接使用new關鍵字了!!!
 * 第二步:
 * 無論protected/private修飾的屬性或方法,請問在當前類的
 * 內部是否可以訪問?---> 可以
 * 第三步:
 * 現在我們根本沒有辦法得到對象(因為你不能使用new關鍵字了),
 * 第四步:靜態成員(包括屬性或方法)在訪問時,只能通過
 * 類名稱::屬性()
 * 類名稱::方法()
 * 第五步:如果我現在存在一個靜態方法--> getInstance()
 * 那么在調用時就應寫成
 * $object = EasyFramework_Easy_Mysql::getInstance()
 * 如果,getInstance()方法可以得到唯一的一個對象
 * 也就代表是所謂的單例模式了!!!
 * 第六步,怎么讓getInstace()只得到一個對象呢?
 * 既然要得到對象,那么肯定是:
 * $variabl = new ????();
 * 我們又知道靜態屬性的值是可以所有的對象來繼承的!!!
 * 靜態成員是屬于類的,而非對象的!
 * 所以:
 * 第七步:聲明一個靜態的屬性,用其存儲實例化的對象
 * protectd static $_instance
 *
 * 并且初始值為null
 * 那么我在調用getInstance()方法時,只需要判斷其值是否為空即可\
 *
 * public static function getInstance(){
 *     if(self::_instance === null){
 *      self::_instance = new self();
 *  }
 *  return self::_instance;
 * }
 * 在實例時,一定是這樣寫:
 * $x = EasyFramework_Easy_Mysql::getInstance();
 * 在第一時調用時,類的$_instance這個靜態屬性值為null,
 * 那么也就代表,getInstance()方法的判斷條件為真了,
 * 也就意味著
 * self::$_instance這個成員有了值了!!!
 * 并且還返回這個值
 * $y = EasyFramework_Easy_Mysql::getInstance();
 * 在第二次或第N次調用時,self::$_instance已經有了值了
 * 也就代表getInstance()方法的條件為假了!!!
 * 也就代表其中的程序代表不可能執行了!!!
 * 也就代表將直接返回以前的值了!!!
 *
 *
 *
 * */

 

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲第一免费播放区 | 日本人做受全过程视频 | 天莱男模gary | 天天综合网网欲色 | 国产自拍资源 | 亚洲人成网站在线观看青青 | 范冰冰a级一级特级毛片 | 强迫高h| 色综合久久天天综合观看 | 午夜一区二区三区 | 精品一区二区免费视频蜜桃网 | 我的家教老师在线观看 | 国产原创一区二区 | 被老外玩爽的中国美女视频 | 热久久天天拍天天拍热久久2018 | 久久综合给会久久狠狠狠 | 粗又长好猛好爽视频 | 亚洲成色WWW久久网站夜月 | 午夜福到在线2019 | 九九99精品 | 亚洲人成影院午夜网站 | 亚洲视频在线观看地址 | 久久黄色精品视频 | 精品视频免费在线观看 | 精品亚洲综合久久中文字幕 | 日韩一区在线观看 | 男人猛戳女人下部30分钟 | 性xxxxⅹhd成人 | 五月激激激综合网色播免费 | 无人区大片免费播放器 | 亚洲午夜精品久久久久久抢 | 大好硬好深好爽想要视频 | 黑人巨大精品战中国美女 | 成人男女啪啪免费观看网站 | 欧美性4khd720| 久久aa毛片免费播放嗯啊 | kk4444了欧美 | 亚洲福利电影一区二区? | 希岛爱理作品在线观看 | 香蕉国产人午夜视频在线 | 55夜色66夜亚州精品站 |