欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

门面模式

程序员文章站 2022-07-08 10:51:55
...

门面模式即外观模式,它提供了统一对内部访问的接口,例如当你来到一家饭店吃饭,在点菜吃饭后,可能还要找到服务员结账,又或者想要登记入住。这样一系列都需要跟不同的人打交道,变得非常麻烦。如果增加一个接待员,需要什么服务直接向接待员提出时,则可以很好地避免这些麻烦。

使用门面模式能够降低客户与系统的耦合度,使用户不需要关注系统的具体实现,只需要跟门面类进行交互即可

同时隐藏了方法的具体实现细节,也提高了代码的安全性。

具体举例如下

首先定义一个门面类Face负责与客户端之间的交互

public class Face {
	public void classA()
	{
		ClassA classA = new ClassA();
		classA.classA1();
	}
	
	public void classB()
	{
		ClassB classB = new ClassB();
		classB.classB1();
	}
}

以及两个实现方法的类ClassA和ClassB

public class ClassA {
	public void classA1()
	{
		System.out.println("This is classA");
	}
	
	/** 此方法仅提供内部调用 */
	private void classA2()
	{
		System.out.println("Hello");
	}
}
public class ClassB {
	public void classB1()
	{
		System.out.println("This is classB");
	}
	
	/** 此方法仅提供内部调用 */
	private void classB2()
	{
		System.out.println("Hello");
	}
}

测试类Test以及测试结果

public class Test {
	public static void main(String[] args) {
		Face face = new Face();
		face.classA();
		face.classB();
	}
}
This is classA
This is classB

 

相关标签: java