//设计一个工厂类,这个工厂类,有一个静态方法:
//通过该方法可以获得指定类的对象:
class A{};
class B{};
class GongChang{
static function GetObject($className){
$obj = new $className();//这是可变类
return $obj;
}
}
$o1 = GongChang::GetObject("A");
$o2 = GongChang::GetObject("B");
$o3 = GongChang::GetObject("A");
var_dump($o1);echo "
";
var_dump($o2);echo "
";
var_dump($o3);echo "
";
单例模式的目的是将类只能造一个对象出来
单例模式的主要方法是:将构造 变成私有的-->做一个静态的生成对象的方法-->造一个静态的存储对象-->return 静态的对象
class DBDA
{
//连接数据库的类让他只能造一个对象出来,在不加任何控制的时候可以造很多的类出来
//在造对象的时候会调用构造的方法,
//把构造方法变成私有的就可以可以控制住
public static $dx;//存储对象
//把构造做为私有
private function __construct()
{
}
//生成对象
static function DuiXiang()
{
if(empty(self::$dx))
{
self::$dx = new DBDA(); //调用静态对象
}
return self::$dx;
}
}
//DBDA::DuiXiang();//调用静态方法
$db = DBDA::DuiXiang();
?>