关闭

Java设计模式(十一):外观模式(门面模式)Facade

236人阅读 评论(0) 收藏 举报
分类:

1.概念

为子系统中的一组接口提供一个统一接口。Facade模式定义了一个高层接口,这个接口使得这子系统更容易使用。


2.UML



3.代码

下面是一个具体案例的代码:

package com.iter.devbox.facade;

/**
 * 子系统角色中的类
 * @author Shearer
 *
 */
public class ModuleA {
	public void testA() {
		System.out.println("调用ModuleA中的testA方法");
	}
}


package com.iter.devbox.facade;

/**
 * 子系统角色中的类
 * @author Shearer
 *
 */
public class ModuleB {
	public void testB() {
		System.out.println("调用ModuleB中的testB方法");
	}
}


package com.iter.devbox.facade;

/**
 * 子系统角色中的类
 * @author Shearer
 *
 */
public class ModuleC {
	public void testC() {
		System.out.println("调用ModuleC中的testC方法");
	}
}


package com.iter.devbox.facade;

/**
 * 门面角色类
 * @author Shearer
 *
 */
public class Facade {  
    //示意方法,满足客户端需要的功能  
    public void test(){  
        ModuleA a = new ModuleA();  
        a.testA();  
        ModuleB b = new ModuleB();  
        b.testB();  
        ModuleC c = new ModuleC();  
        c.testC();  
    }  
}  


package com.iter.devbox.facade;

/**
 * 客户端角色类
 * @author Shearer
 *
 */
public class Client {
	public static void main(String[] args) {
		Facade facade = new Facade();
		facade.test();
	}
}


4.应用场景

1)为一个复杂子系统提供一个简单接口。

2)提高子系统的独立性。

3)在层次化结构中,可以使用Facade模式定义系统中每一层的入口。


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:455293次
    • 积分:4124
    • 等级:
    • 排名:第7935名
    • 原创:68篇
    • 转载:12篇
    • 译文:0篇
    • 评论:97条
    最新评论