java外观模式详解(service第三者插足让action与dao分手)

java外观模式详解(service第三者插足让action与dao分手)

ID:18743502

大小:145.50 KB

页数:5页

时间:2018-09-20

java外观模式详解(service第三者插足让action与dao分手)_第1页
java外观模式详解(service第三者插足让action与dao分手)_第2页
java外观模式详解(service第三者插足让action与dao分手)_第3页
java外观模式详解(service第三者插足让action与dao分手)_第4页
java外观模式详解(service第三者插足让action与dao分手)_第5页
资源描述:

《java外观模式详解(service第三者插足让action与dao分手)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、各位好,LZ今天给各位分享一个不太熟悉的面孔,但却是我们最经常使用的设计模式,外观模式。定义:外观模式是软件工程中常用的一种软件设计模式。它为子系统中的一组接口提供一个统一的高层接口。这一接口使得子系统更加容易使用。该定义引自百度百科,它的表现很简单,将一系列子接口的功能进行整理,从而产生一个更高层的接口。相信做JAVA的各位大部分是WEB开发,那么肯定都对XXXDao,XXXService非常熟悉了,这显然和外观模式有一腿。当然,还有一大部分是android开发,LZ没接触过android开发,但是LZ大胆的想象,在移动领域的JAVA开发,应该也有类似的情况发

2、生。接下来,我们来看看外观模式的标准类图。上述便是外观模式的类图,它主要由两部分组成,一部分是子系统(包括接口,实现类,等等),一部分是外观接口和实现类,外观接口负责提供客户端定制的服务,外观实现则负责组合子系统中的各个类和接口完成这些服务,外观接口则是提供给客户端使用的,这样就解除了客户端与子系统的依赖,而让客户端只依赖于外观接口,这是一个优秀的解耦实践。下面LZ依然使用JAVA代码将上述的类图诠释出来,我们来直观的看看外观模式的实现方式。首先是我们的子系统,它包括三个接口,三个实现,LZ这里一并给出。packagecom.facade;publicinter

3、faceSub1{voidfunction1();}packagecom.facade;publicinterfaceSub2{voidfunction2();}packagecom.facade;yearsmortgagehousing;4.mortgageregistrationformalitiesarecompleted.(D)pledge1.borrower(includingthepledgor)between18-65yearsofage,withfullcivilcapacity;2.collateralpublicinterfaceSub3{v

4、oidfunction3();}packagecom.facade;publicclassSub1ImplimplementsSub1{publicvoidfunction1(){System.out.println("子系统中Sub1接口的功能");}}packagecom.facade;publicclassSub3ImplimplementsSub3{publicvoidfunction3(){System.out.println("子系统中Sub3接口的功能");}}以上便是我们模拟出的一个子系统,那么现在便是我们最重要的接口出场的时候了,LZ给出Fac

5、ade以及它的简单实现。packagecom.facade;publicinterfaceFacade{/*下面随便组装几个功能*/voidfunction12();voidfunction23();voidfunction123();}packagecom.facade;publicclassFacadeImplimplementsFacade{privateSub1sub1;privateSub2sub2;privateSub3sub3;yearsmortgagehousing;4.mortgageregistrationformalitiesarecomp

6、leted.(D)pledge1.borrower(includingthepledgor)between18-65yearsofage,withfullcivilcapacity;2.collateralpublicFacadeImpl(){super();this.sub1=newSub1Impl();this.sub2=newSub2Impl();this.sub3=newSub3Impl();}publicFacadeImpl(Sub1sub1,Sub2sub2,Sub3sub3){super();this.sub1=sub1;this.sub2=sub

7、2;this.sub3=sub3;}publicvoidfunction12(){sub1.function1();sub2.function2();}publicvoidfunction23(){sub2.function2();sub3.function3();}publicvoidfunction123(){sub1.function1();sub2.function2();sub3.function3();}}以上便是我们的外观接口和实现类,它当中的功能一般是根据是客户端的需要定制的,将客户端的一个完整功能作为一个行为,然后调用子系统完成。下面我们看看客

8、户端的调用。packag

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。