外观模式(Facade Pattern):一个对象如果封装了其他对象的创建,那么就可以使用这些对象的相关属性或方法。
我们简单举一个穿戴的例子,先定义一个穿戴接口:
//定义穿戴
public interface Wear {
void wear();//穿戴
}
接下来是具体实现:
//穿戴衣服
public class WearClothes implements Wear{
@Override
public void wear() {
System.out.println("穿衣服");
}
}
//穿戴袜子
public class WearSocks implements Wear{
@Override
public void wear() {
System.out.println("穿袜子");
}
}
现在我们来定义一个穿戴者,这个对象的构造方法中封装了上面两个对象的创建过程,并且在自己的方法中封装了这两个对象的方法:
//穿戴者
public class Wearer {
private Wear wearClothes;
private Wear wearSocks;
public Wearer() {//构造方法中封装了两个其他对象的创建
wearClothes = new WearClothes();
wearSocks = new WearSocks();
}
public void wearSomething(){//将WearClothers对象和WearSocks对象的穿戴方法并为己用
wearClothes.wear();
wearSocks.wear();
}
}
现在来实际操作一下:
public static void main(String[] args) {
Wearer wearer= new Wearer();
wearer.wearSomething();
}
运行结果:
穿衣服
穿袜子