java设计模式之外观模式
2016-09-06 00:00
267 查看
定义:外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用
特点:
(1)实现了子系统与客户端之间的松耦合关系。
(2)客户端屏蔽了子系统组件,减少了客户端所需处理的对象数目,并使得子系统使用起来更加容易。
企业级开发和常用框架重的应用:很多,比如常见的字符串的分割方法spilt也是
具体实例:
其实外观模式就和我们常提的封装概念差不多,封装是将对象封装起来,而外观模式,则是将复杂的流程封装起来,对外提供一个统一的接口,让用户不用去管整个复杂的流程,只关注流程处理结果。
特点:
(1)实现了子系统与客户端之间的松耦合关系。
(2)客户端屏蔽了子系统组件,减少了客户端所需处理的对象数目,并使得子系统使用起来更加容易。
企业级开发和常用框架重的应用:很多,比如常见的字符串的分割方法spilt也是
具体实例:
package com.test.faced; /** * 以喝茶为例:我们要喝茶,就得有茶具,茶叶,煮茶工具等 */ public class Demo { public static void main(String[] args) { System.out.println("不使用外观模式时,这些对象都需要客户自己去准备"); Tea tea = new Tea("龙井"); TeaSet teaSet = new TeaSet(); TeaTools teaTools = new TeaTools(); System.out.println("喝茶"); System.out.println("使用外观模式,我们提供一个茶馆对象:"); TeaHouse teaHouse = new TeaHouse(); teaHouse.drinkTead(); System.out.println("喝茶"); } } class Tea{ public Tea(String name) { System.out.println("准备想要喝的茶的茶叶:"+name); } } class TeaSet{ public TeaSet() { System.out.println("准备喝茶要用的茶具"); } } class TeaTools{ public TeaTools() { System.out.println("准备煮茶要用的工具,煮茶"); } } class TeaHouse{ public void drinkTead(){ Tea tea = new Tea("龙井"); TeaSet teaSet = new TeaSet(); TeaTools teaTools = new TeaTools(); System.out.println("请喝茶"); } }
其实外观模式就和我们常提的封装概念差不多,封装是将对象封装起来,而外观模式,则是将复杂的流程封装起来,对外提供一个统一的接口,让用户不用去管整个复杂的流程,只关注流程处理结果。
相关文章推荐
- Java设计模式(5) -- 外观
- java软件体系结构设计模式----外观
- JAVA设计模式(22) —外观(Facade)模式
- 【Java设计模式】之外观模式
- JAVA设计模式十八:--Facade(外观模式或门面模式)
- Java设计模式之外观模式
- java设计模式-外观模式(Facade)
- Java设计模式 结构模式-外观模式(Facade)
- JAVA设计模式之外观模式
- Java设计模式---外观模式
- Java设计模式(五)Facade(外观),Composite(组合),Decorator(油漆工)
- java 设计模式学习笔记七 facade外观模式
- JAVA设计模式十九--Facade(外观模式)
- Java设计模式之适配器模式和外观模式
- Java设计模式之外观模式研究
- Java设计模式之外观模式
- java设计模式之外观模式Facade
- JAVA设计模式——外观模式
- Java设计模式---外观模式
- Java设计模式十七:外观模式(Facade)