單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。
單例模式是一種常見的設計模式,在計算機系統中,執行緒池、快取、日誌物件、對話方塊、印表機、資料庫操作、顯示卡的驅動程式常被設計成單例。
單例模式分3種:懶漢式單例、餓漢式單例、登記式單例。
單例模式有以下3個特點:
1.只能有乙個例項。
2.必須自行建立這個例項。
3.必須給其他物件提供這一例項。
那麼為什麼要使用php單例模式?
php乙個主要應用場合就是應用程式與資料庫打交道的場景,在乙個應用中會存在大量的資料庫操作,針對資料庫控制代碼連線資料庫的行為,使用單例模式可以避免大量的new操作。因為每一次new操作都會消耗系統和記憶體的資源。
class single
static public $instance;//宣告乙個靜態變數(儲存在類中唯一的乙個例項)
static public function getinstance()
public function setname($n)
public function getname()
}$oa = single::getinstance();
$ob = single::getinstance();
$oa->setname('hello world');
$ob->setname('good morning');
echo $oa->getname();//good morning
echo $ob->getname();//good morning
簡單單鏈表實現
這裡主要是實現了乙個單鏈表,不帶頭節點的單鏈表,使用了二級指標。如果是帶頭節點的鍊錶,其只要一級指標就可以了。接下來是乙個單鏈表翻轉的函式。typedef struct listnode listnode void reverselist listnode l pl l while pl null ...
C 實現 簡單 單鏈表
我們首先建立乙個 標頭檔案,宣告乙個單鏈表結構 include list.h cpp view plain copy 建立乙個單鏈表結構,包含一些常見的操作 ifndef list h define list h include struct node node createlists 建立乙個空表...
設計模式 簡單單例設計模式
單例作用 保證在程式執行乙個類最多只能存在乙個物件,並且使訪問更加方便。什麼是單利模式 單一管理類,一般用於限制例項化物件只能在當前類中,並且只能例項化乙個,單利方便我們不會去反覆的例項化物件,造成不必要要的資源浪費。同時通過單利我們可以防止併發訪問,什麼是併發訪問,就是在多執行緒中,不同的執行緒同...