轻松掌握java外观模式

所属分类: 软件编程 / java 阅读数: 43
收藏 0 赞 0 分享

定义:外观模式(Facade),为子系统中的一组接口提供一个一致的界面,定义一个高层接口,这个接口使得这一子系统更加容易使用

特点:

    (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("请喝茶");
 }
}

其实外观模式就和我们常提的封装概念差不多,封装是将对象封装起来,而外观模式,则是将复杂的流程封装起来,对外提供一个统一的接口,让用户不用去管整个复杂的流程,只关注流程处理结果。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

更多精彩内容其他人还在看

JavaWeb项目部署到服务器详细步骤详解

这篇文章主要介绍了JavaWeb项目如何部署到服务器,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

IDEA基于支付宝小程序搭建springboot项目的详细步骤

这篇文章主要介绍了IDEA基于支付宝小程序搭建springboot项目的详细步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解SpringBoot应用服务启动与安全终止

这篇文章主要介绍了SpringBoot应用服务启动与安全终止,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring Boot启动及退出加载项的方法

这篇文章主要介绍了Spring Boot启动及退出加载项的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Spring Data Jpa 自动生成表结构的方法示例

这篇文章主要介绍了Spring Data Jpa 自动生成表结构的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

IDEA中osgi的开发应用指南详解

这篇文章主要介绍了IDEA中osgi的开发应用指南详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解用maven将dubbo工程打成jar包运行

这篇文章主要介绍了详解用maven将dubbo工程打成jar包运行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

详解Java合并数组的两种实现方式

这篇文章主要介绍了Java合并数组的两种实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

使用Jenkins Pipeline自动化构建发布Java项目的方法

这篇文章主要介绍了使用Jenkins Pipeline自动化构建发布Java项目的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

使用Maven配置Spring的方法步骤

这篇文章主要介绍了使用Maven配置Spring的方法步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多