JAVA設計模式 外觀模式

2021-08-14 20:59:09 字數 1744 閱讀 6227

外觀模式(又稱為門面模式)是一種結構型設計模式。外觀模式的思想是:為子系統的各個模組提供乙個統一的門面,由門面負責對客戶提供服務

外觀模式涉及2個角色:

當一次的功能訪問同時呼叫到多個物件時,可以使用外觀模式。例如,在分布式應用中,通過遠端呼叫服務,使用外觀模式可以降低應用程式與服務的互動次數,同時可以降低應用程式的複雜性。

**實現如下:

子系統:

public

class modulea

}public

class moduleb

}public

class modulec

}

門面:

public

class facade

}

客戶:

public

class client

}// 測試

class facadetest

}

執行結果:

module a

module b

module c

結構圖:

當想選擇性地暴露子系統模組的方法時,可以使用外觀模式。

**實現如下:

子系統:

public

class modulea

public

void

method2()

}public

class moduleb

public

void

method2()

}public

class modulec

public

void

method2()

}

門面:

public

class facade

public

void

methodb()

public

void

methodc()

}

客戶:

public

class client

}// 測試

class facadetest

}

執行結果:

module a 1

module b 1

module c 1

結構圖:

外觀模式鬆散了客戶端與子系統的耦合關係,讓子系統內部的模組能更容易擴充套件和維護。

外觀模式讓子系統更加易用,客戶端不再需要了解子系統內部的實現,也不需要跟眾多子系統內部的模組進行互動,只需要跟門面類互動就可以了。

通過合理使用facade,可以幫助我們更好地劃分訪問的層次。有些方法是對系統外的,有些方法是系統內部使用的。把需要暴露給外部的功能集中到門面中,這樣既方便客戶端使用,也很好地隱藏了內部的細節。

Java設計模式 外觀模式

外觀模式 facade 外觀模式的意圖是 為子系統提供乙個介面,便於它的使用。解釋 簡單的說,外觀模式就是封裝多個上層應用需要的方法,使得上層呼叫變得簡單,為上層提供簡單的介面,是設計模式中一種比較簡單的設計思想,但是,也是最常用的一種設計模式。舉例 當你想吃橘子的時候,你需要做那幾件事呢?1 去買...

Java設計模式 外觀模式

外觀模式 facade 是為了解決類與類之間的依賴關係的,像spring一樣,可以將類與類之間的關係配置到配置檔案中,而外觀模式就是將他們的關係放在乙個facade類中,降低了類與類之間的耦合度,該模式中沒有涉及到介面。我們先看兩張結構圖,可以一目了然的了解外觀模式的作用。未使用外觀模式 使用了外觀...

Java設計模式 外觀模式

外觀模式 facade 外觀模式的意圖是 為子系統提供乙個介面,便於它的使用。解釋 簡單的說,外觀模式就是封裝多個上層應用需要的方法,使得上層呼叫變得簡單,為上層提供簡單的介面,是設計模式中一種比較簡單的設計思想,但是,也是最常用的一種設計模式。舉例 當你想吃橘子的時候,你需要做那幾件事呢?1 去買...