mysql橋梁模式 多例模式(Multiton)

2021-10-21 01:13:23 字數 1168 閱讀 4108

多例模式(multiton)

由 學院君 建立於5年前, 最後更新於 1年前

版本號 #1

10083 views

5 likes

0 collects

1、模式定義

多例模式和單例模式類似,但可以返回多個例項。比如我們有多個資料庫連線,mysql、sqlite、postgres,又或者我們有多個日誌記錄器,分別用於記錄除錯資訊和錯誤資訊,這些都可以使用多例模式實現。

2、uml類圖

3、示例**

multiton.php

namespace designpatterns\creational\multiton;

* multiton類

class multiton

* 第乙個例項

const instance_1 = '1';

* 第二個例項

const instance_2 = '2';

* 例項陣列

* @var array

private static $instances = array();

* 建構函式是私有的,不能從外部進行例項化

private function __construct()

* 通過指定名稱返回例項(使用到該例項的時候才會例項化)

* @param string $instancename

* @return multiton

public static function getinstance($instancename)

if (!array_key_exists($instancename, self::$instances)) {

self::$instances[$instancename] = new self();

return self::$instances[$instancename];

* 防止例項從外部被轉殖

* @return void

private function __clone()

* 防止例項從外部反序列化

* @return void

private function __wakeup()

設計模式 橋梁模式

定義抽象公司 public abstract class corp 上方是模板方法 下面是房地產公司 public class housecorp extends corp 賣房子 protected void sell 賺錢 public void makemoney 服裝公司 public cl...

設計模式 多例模式

首先宣告,此文整理自其它文獻,原作者用舉例的方式,將大道理解釋的淺顯易懂,初學設計模式者容易理解 下面進入正題 這種情況有沒有?有!是,確實有,就出現在明朝,那三國期間的算不算,不算,各自稱帝,各有各的地盤,國號不同。大家還記得那首詩 石灰吟 嗎?作者是誰?于謙,他是被誰殺死的?明英宗朱祁鎮,對,就...

設計模式 多例模式

多例模式 有上限的多例模式 沒上限的多例模式太容易了,和你直接new乙個物件沒啥區別,不討論 有時候當皇帝的是兒子其實還有乙個太上皇啊 有上限的多例模式 沒上限的多利模式太容易了,跟new個物件沒啥區別 public class emperor 就這麼多皇帝,不允許再推舉乙個皇帝 new 乙個皇帝 ...