【設計模式】—— 外觀模式Facade

  前言:【模式總覽】——————————by xingoohtml

  模式意圖

  外觀模式主要是爲了爲一組接口提供一個一致的界面。從而使得複雜的子系統與用戶端分離解耦。spa

  有點相似家庭經常使用的一鍵開關,只要按一個鍵,檯燈臥室客廳的燈都亮了。雖然他們各有各自的開關,可是對外用一個來控制。code

  應用場景

  1 爲複雜系統 提供簡單的接口。htm

  2 客戶程序與抽象類的實現部分分離。blog

  3 構建層次系統時,用做入口。接口

  模式結構

  Facade 對外的統一接口get

class Facade{ public void operation(){ subsystemClass1.operation(); subsystemClass2.operation(); } }

  subsystem Class 內部系統的實現類io

class subsystemClass1{ public static void operation(){ System.out.println("subsystemClass1 operation()"); } } class subsystemClass2{ public static void operation(){ System.out.println("subsystemClass2 operation()"); } }

  代碼結構

package com.xingoo.facade; class Facade{ public void operation(){ subsystemClass1.operation(); subsystemClass2.operation(); } } class subsystemClass1{ public static void operation(){ System.out.println("subsystemClass1 operation()"); } } class subsystemClass2{ public static void operation(){ System.out.println("subsystemClass2 operation()"); } } public class Client { public static void main(String[] args) { Facade facade = new Facade(); facade.operation(); } }

  運行結果class

subsystemClass1 operation() subsystemClass2 operation()
相關文章
相關標籤/搜索