外观模式的目的是为类的调用提供一个统一的接口,用户只需要通过这个接口就可以实现内部复杂类的方法,无须详细了解内部复杂类的具体实现方式,降低系统调用的复杂度。
下例仍以画图形为例说明外观模式的用法。Shape接口类有两个实现类Circle和Rectangle,其内部具体的画圆和画矩形可能较为复杂,为此,设计了一个外观类ShapeMaker,通过ShapeMaker类的调用就可以实现画圆和画矩形的功能,用户完全不需要了解Circle和Rectangle类的内容代码。
外观模式常用于应用程序的对外接口设计,通过设计一个外观类,不了解应程序内部代码的人也可以轻松应用程序的相关功能,有利于程序的模块化设计。
Shape接口类:
package facade;
public interface Shape {
public void draw();
}
Circle实现类:
package facade;
public class Circle implements Shape{
@Override
public void draw() {
System.out.println("画圆形");
}
}
Rectangle实现类:
package facade;
public class Rectangle implements Shape{
@Override
public void draw() {
System.out.println("画矩形");
}
}
ShapeMaker外观类:
package facade;
public class ShapeMaker {
private Shape circle;
private Shape rectangle;
public ShapeMaker() {
circle=new Circle();
rectangle=new Rectangle();
}
public void circleDraw() {
circle.draw();
}
public void rectangleDraw() {
rectangle.draw();
}
}
主函数调用方式:
package main;
import facade.*;
public class FacadePattern {
public static void main(String[] args) {
ShapeMaker shapeMaker=new ShapeMaker();
shapeMaker.circleDraw();
shapeMaker.rectangleDraw();
}
}
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
printf函数
+关注
关注
0文章
31浏览量
5878
发布评论请先 登录
相关推荐
基于FPGA的I2C SLAVE模式总线的设计方案
本文以标准的I2C 总线协议为基础,提出了一种基于FPGA的I2C SLAVE 模式总线的设计方案。方案主要介绍了SLAVE 模式的特点。给出了设计的原理框图和modelsim 下的行
发表于 02-26 11:39
•1.4w次阅读
百灵鸟电路的设计方案
百灵鸟电路的设计方案电子技术综合课程设计报告一、综合设计的目的与要求:设计一百灵鸟电路,要求:A:在不同的光照下发出高低变化的鸣叫声;B:周期性的鸣叫 T=2~3秒。
发表于 12-16 11:47
【资料分享】STM32设计方案与示例分享 第一波
本帖最后由 我是大彭 于 2014-3-12 15:52 编辑
STM32设计方案与示例分享第一波分享一下基于STM32单片机的数据记录装置设计方案基于STM32的多路电压测量设计方案嵌入式
发表于 03-12 14:47
车载显示技术及其应用方案~
的仪表不断在汽车上应用。下列介绍民用汽车中常见的车载显示技术及应用,并阐述其设计方案。仪表盘设计解决方案:详述基于TMS470PLF221RFPQ1的高端带汽车仪表盘方案详述为嵌入式图形应用选择合适
发表于 12-15 14:19
STM32设计方案与示例分享
都是经典项目,建议下载学习STM32设计方案与示例分享 第一波stm32设计方案与示例分享第二波STM32计方案与示例分享 第三波STM32计方案与示例分享 第四波
发表于 09-03 18:52
一种实用的单片机双CPU设计方案及其应用
一种实用的单片机双CPU设计方案及其应用:针对传统仪表具有的硬件资源不足、速度慢等功能缺陷,提出了一种基于单片机的CPU设计方案,即扩展CPU,直接从主CPU对应的数据显示I/O口上获
发表于 08-26 19:15
•35次下载
芯片设计公司ARM推出了新的授权模式,尝试不同的芯片设计方案
据外媒euronews报道,为了寻求更多的客户,日前,芯片设计公司ARM推出了新的授权模式,将允许芯片厂商在支付最终选择费用前尝试不同的芯片设计方案。
多模式电源管理IC的低功耗设计方案
针对降低多模式电源管理IC在轻载与待机工作模式下功耗,提高其全负载条件下工作效率的需要,提出一种电源管理IC供电系统的设计方案,实现了其在启动、关断、重载、轻载以及待机等各种工作情况下的高效率低功耗工作。
评论