外观模式是一种很好理解的方式。设计一个Facade类,由它来直接与调用方打交道。这样可以对调用方与实现方进行解耦。
具体代码
1、Facade类
2、实现方A
3、实现方B
4、调用方
具体代码
1、Facade类
public class MoveFacade {
public void onTrain() {
new Bus().take();
new Car().drive();
}
public void gohome() {
new Bus().move();
}
}
2、实现方A
public class Car {
public void drive() {
System.out.println("drive a bus");
}
public void move() {
System.out.println("move to home");
}
}
3、实现方B
public class Bus {
public void take() {
System.out.println("take a bus");
}
public void move() {
System.out.println("move to home");
}
}
4、调用方
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
MoveFacade mf = new MoveFacade();
mf.onTrain();
mf.gohome();
}
}