动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   程序开发 → 阅读文章

 Java设计模式之外观模式(1)

作者来源: 
阅读 数 586 人次 , 2006-4-28 8:37:00 

描述

外观模式(Façade pattern)涉及到子系统的一些类。所谓子系统,是为提供一系列相关的特征(功能)而紧密关联的一组类。例如,一个Account类、Address类和CreditCard类相互关联,成为子系统的一部分,提供在线客户的特征。

在真实的应用系统中,一个子系统可能由很多类组成。子系统的客户为了它们的需要,需要和子系统中的一些类进行交互。客户和子系统的类进行直接的交互会导致客户端对象和子系统之间高度耦合。任何的类似于对子系统中类的接口的修改,会对依赖于它的所有的客户类造成影响。

外观模式(Façade pattern)很适用于在上述情况。外观模式(Façade pattern)为子系统提供了一个更高层次、更简单的接口,从而降低了子系统的复杂度和依赖。这使得子系统更易于使用和管理。

外观是一个能为子系统和客户提供简单接口的类。当正确的应用外观,客户不再直接和子系统中的类交互,而是与外观交互。外观承担与子系统中类交互的责任。实际上,外观是子系统与客户的接口,这样外观模式降低了子系统和客户的耦合度。

我们可以看到:外观对象隔离了客户和子系统对象,从而降低了耦合度。当子系统中的类进行改变时,客户端不会像以前一样受到影响。

尽管客户使用由外观提供的简单接口,但是当需要的时候,客户端还是可以视外观不存在,直接访问子系统中的底层次的接口。这种情况下,它们之间的依赖/耦合度和原来一样。

例子:

让我们建立一个应用:

(1) 接受客户的详细资料(账户、地址和信用卡信息)

(2) 验证输入的信息

(3) 保存输入的信息到相应的文件中。

这个应用有三个类:Account、Address和CreditCard。每一个类都有自己的验证和保存数据的方法。

  
 
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:Java设计模式之装饰模式(1)
· 下一篇:Java技巧:在清单里设置主类
· 浅谈MVC框架中View层的优雅设计及实例
· Java桌面应用程序设计:SWT简介(1)
· 插入排序算法的JAVA实现
· 彻底解决Windows XP的互访问题
· Windows XP图标设计简述


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077