php實現singleton()單例模式執行個體,singleton執行個體
本文執行個體講述了php實現singleton()單例模式的方法。分享給大家供大家參考。具體實現方法如下:
common.php檔案如下:
複製代碼 代碼如下:<?php
class CC
{
private static $ins;
public static function singleton()
{
if (!isset(self::$ins)){
$c = __CLASS__;
self::$ins = new $c;
}
return self::$ins;
}
public function EventResult($Id)
{
return $Id;
}
}
?>
index.php檔案如下:
複製代碼 代碼如下:
測試
<?php
require 'common.php';
$objCC=CC::singleton();
$r=$objCC->EventResult(7);
print_r($objCC);
echo $r."
";
?>
希望本文所述對大家的PHP程式設計有所協助。
對於JAVA中的singleton模式
package test;
public class Singleton {
private Singleton s;
private Singleton()
{
}
public static Singleton getSigleton()
{
if(s==null)s=new Singleton();
return s;
}
}
這就是一個單例模式,我想應該不用注釋了,原理就是這個類的構造方法private了,所有在外邊不能調用,也就不能new Singleton();得到執行個體,那麼
想得到執行個體就得調用它的靜態方法getSigleton();即Singleton.getSigleton();就會返回一個Singleton的執行個體,注意此方法中的語句,即如果你是第一次調用這個方法那麼它會給你new一個執行個體,以後再調用得到的都是這個執行個體,也就是說從始至終就只有一個Singleton的執行個體,這就是單例模式。
java 單例模式 (singleton) 問題
你給出的代碼中,單例不是同步
dao一般也是用單例模式
在DAO類中 類的成員變數是會出現如你所說的並發安全,但是一般DAO的類變數都是有關資料來源串連的,一般情況下都是一樣的,所以即使是並發調用也不影響。
在DAO方法中的局部變數 都是線程獨立的,不存在並發衝突的問題。
http://www.bkjia.com/PHPjc/907283.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/907283.htmlTechArticlephp實現singleton()單例模式執行個體,singleton執行個體 本文執行個體講述了php實現singleton()單例模式的方法。分享給大家供大家參考。具體實現方法如下:...