国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php單態設計模式(單例模式)實例

2024-05-04 23:27:35
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php單態設計模式(單例模式)實例,單態模式的主要作用是保證在面向對象編程設計中,一個類只能有一個實例對象存在,需要的朋友可以參考下
 
 

單態設計模式也叫單例模式:

1.單態設計模式含義:

單態模式的主要作用是保證在面向對象編程設計中,一個類只能有一個實例對象存在。作為對象的創建模式,單例模式確保某一個類只有一個實例,而且自行實例化并向整個系統全局地提供這個實例。它不會創建實例副本,而是會向單例類內部存儲的實例返回一個引用。

2.單臺模式的三個關鍵點:

① 需要一個保存類的唯一實例的靜態成員變量;
②構造函數和克隆函數必須聲明為私有的,防止外部程序new類從而失去單例模式的意義;
③必須提供一個訪問這個實例的公共的靜態方法(通常為getInstance方法),從而返回唯一實例的一個引用 。

 

復制代碼代碼如下:

<?php
class DB {
    private static $obj = null;           //聲明一個私有的,靜態的成員屬性$obj
    private function__construct() {       //私有構造方法,只能在類的內部實例化對象
        echo "連接數據庫成功<br>";
    }
    public static function getInstance() {  // 通過此靜態方法才能獲取本類的對象
        if(is_null(self::$obj))  //如果本類中的$obj為空,說明還沒有被實例化過
            self::$obj = new self();  //實例化本類對象
            return self::$obj;  //返回本類的對象
    }
    public function query($sql) {  //執行SQL語句完成對數據庫的操作
        echo $sql;
    }
}
    $db = DB::getInstance();        //只能使用靜態方法getInstance()去獲取DB類的對象
    $db -> query("select *from user");       //訪問對象中的成員
?>

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 华蓥市| 贵南县| 峨边| 绥江县| 宁国市| 同江市| 佛坪县| 白山市| 庆云县| 遵义县| 花垣县| 通城县| 弥勒县| 论坛| 朔州市| 陆川县| 西昌市| 北碚区| 星子县| 泗水县| 棋牌| 东丰县| 岐山县| 姜堰市| 嘉祥县| 保康县| 漾濞| 台州市| 公安县| 贵港市| 竹北市| 伊宁县| 富源县| 加查县| 新平| 罗定市| 平果县| 乌鲁木齐市| 鹤岗市| 东莞市| 拜城县|