首页 > 代码库 > 【设计模式】—— 外观模式Facade
【设计模式】—— 外观模式Facade
前言:【模式总览】——————————by xingoo
模式意图
外观模式主要是为了为一组接口提供一个一致的界面。从而使得复杂的子系统与用户端分离解耦。
有点类似家庭常用的一键开关,只要按一个键,台灯卧室客厅的灯都亮了。虽然他们各有各自的开关,但是对外用一个来控制。
应用场景
1 为复杂系统 提供简单的接口。
2 客户程序与抽象类的实现部分分离。
3 构建层次系统时,用作入口。
模式结构
Facade 对外的统一接口
class Facade{ public void operation(){ subsystemClass1.operation(); subsystemClass2.operation(); }}
subsystem Class 内部系统的实现类
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(); }}
运行结果
subsystemClass1 operation()subsystemClass2 operation()
【设计模式】—— 外观模式Facade
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。