例項探索Java模式之路 門面模式

2021-08-03 03:24:09 字數 1482 閱讀 3795

門面模式

門面模式相對比較簡單,在這裡簡單介紹下門面模式。

1、門面模式是物件的結構模式。外部與乙個子系統的通訊必須通過乙個統一的門面物件進行。

(比如,病人去醫院看病,自己要進行**,付費,拿藥等操作,現在用門面模式改造下,病人和醫院之間出現了接待員,負責病人的行為操作,幫病人**,取藥等,這個接待員就相當於乙個門面)。

2、門面模式結構:

1、門面角色:客戶端可以呼叫這個角色的方法。知道相關子系統的功能和責任。本角色將所有從客戶端發來的請求委派到相應的子系統去。

2、子系統角色:可以有乙個或者多個子系統,每乙個子系統都是乙個類的集合。每個子系統都可以被客戶端直接呼叫,或者被門面角色呼叫。

子系統並不知道門面的存在,對於子系統門面僅僅是另外乙個客戶端而言。

3、乙個警報系統的例子:

public class alarm

// 關閉

public void turnoff()

// 拉響

public void ring()

// 停止

public void stop()

}public class camera

// 關閉

public void turnoff()

// 轉動

public void rotate(int degrees)

}public class light

// 關閉

public void turnoff()

// 換燈泡

public void changebulb()

}public class sensor

// 關閉

public void turnoff()

// 觸發

public void changebulb()

}//客戶端

public class client

}不採用門面模式下的警報系統結構圖:

經門面模式改造後:

//增加乙個門面,處理繁雜工作

public class securityfacade

public void deactivate()

}//客戶端

public class client

}採用門店模式下的系統結構圖:

經過門面模式的改造,該系統變得非常簡單,繁雜的操作都放在門面裡面,客戶端操作變得非常簡單。

通過此例項,相信對該模式有了進一步的認識。

每天努力一點,每天都在進步。

java 門面模式

門面模式有三個角色組成 1 門面角色 facade 這是門面模式的核心。它被客戶角色呼叫,因此它熟悉子系統的功能。它內部根據客戶角色已有的需求預定了幾種功能組合。2 子系統角色 實現了子系統的功能。對它而言,fa ade 角色就和客戶角色一樣是未知的,它沒有任何 fa ade 角色的資訊和鏈結。3 ...

java設計模式之門面模式

顧名思義 就如同現實世界中的商店,衣服店等門面一樣.我們只需要把錢給人家,拿到自己需要的東西.對於這個商品從 來,又是怎麼造出來的我們大不必要關係,我們只需要關心這個東西好用不用,實用不實用.我們就拿過去經常使用的寫信來舉個例子,首先看圖如下 如下 package com.pattern publi...

java 設計模式之門面模式

面模式 facade pattern 又稱外觀模式,為子系統中的一組介面提供乙個一致的介面,facade 模式定義了乙個高層介面,這個介面使得這一子系統更加容易使用。簡而言之,就是把一堆複雜的流程封裝成乙個介面供給使用者更簡單的使用,這個設計模式裡有三個角色 1 門面角色 facade 這是門面模式...