入门设计模式之外观模式
程序员文章站
2022-03-28 18:19:27
学习更多设计模式请参考:入门设计模式之汇总篇 外观模式:外部系统与子系统的通信必须通过一个统一的对象进行 举个例子,现在结婚是不是都找婚庆公司啊,为什么呢?因为如果不找婚庆公司自己筹备的话,我们可能得自己跑去订酒店,自己去找主持人,自己去找摄像,自己去找车队。是不是太麻烦了点,而有了婚庆公司就不一样 ......
学习更多设计模式请参考:
外观模式:外部系统与子系统的通信必须通过一个统一的对象进行
举个例子,现在结婚是不是都找婚庆公司啊,为什么呢?因为如果不找婚庆公司自己筹备的话,我们可能得自己跑去订酒店,自己去找主持人,自己去找摄像,自己去找车队。是不是太麻烦了点,而有了婚庆公司就不一样了,我可以吩咐他去找酒店,找主持人等等。。。
来看一下类图:
- 在这里Facade就相当于婚庆公司的角色,我们作为client直接调用Facade的方法,而不关心车队、酒店、主持人等是如何找到的。
代码实现:
public class Car { public void carList() { System.out.println("-----"); } } public class Host { public void married() { System.out.println("-----"); } } public class Hotel { public void party() { System.out.println("-----"); } } public class Facade { private Host host =new Host(); private Hotel hotel =new Hotel(); private Car car=new Car(); public void married(){ host.married(); } public void carList(){ car.carList(); } public void party(){ hotel.party(); } }
本文出自,转载请保留。