外观模式是为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度。
外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观模式定义一个高层接口,让子系统更容易使用。
使用JAVA代码来直观的看看外观模式的实现方式。首先是我们的子系统,它包括三个接口,三个实现这里一并给出。
package com.facade;
public interface Sub1 {
void function1();
}
package com.facade;
public interface Sub2 {
void function2();
}
package com.facade;
public interface Sub3 {
void function3();
}
package com.facade;
public class Sub1Impl implements Sub1{
public void function1() {
System.out.println("子系统中Sub1接口的功能");
}
}
package com.facade;
public class Sub3Impl implements Sub3{
public void function3() {
System.out.println("子系统中Sub3接口的功能");
}
}
在有些情况下,它能起到积极的作用,有些情况可能会带来相反的效果。每一种模式都有它的适用场景。
1.多个类为同一个功能服务,它们之间耦合较高,使用复杂。
2.多个类之间的关系经常发生变化。
3.多个类互相配合使用的方法中,有些常用搭配。
4.用户通常不关心几个类之间的配合。
为了让学习变得轻松、高效,今天给大家免费分享一套Java教学资源。帮助大家在成为Java架构师的道路上披荆斩棘。需要资料的欢迎加入学习交流群:9285,05736