抽象工厂模式实战
- 某软件公司要推出一款新的手机游戏软件,该软件能够支持ios. Android和
Windows Phone等多个智能手机操作系统平台,针对不同的手机操作系统,该游戏软件提
供了不同的游戏操作控制(OperationController)类和游戏界面控制(InterfaceController)
类,并提供相应的工厂类来封装这些类的初始化过程。软件要求具有较好的扩展性以支持
新的操作系统平台,为了满足上述需求,试采用抽象工厂模式对其进行设计。
类图如下:

/**产品接口*/
public interface InterfaceController {
public void display();
}
public interface OperationController {
public void display();
}
/**具体产品*/
public class AndroidInterfaceController implements InterfaceController{
@Override
public void display() {
System.out.println("this is AndroidInterfaceController");
}
}
public class AndroidOperationController implements OperationController {
@Override
public void display() {
System.out.println("this is AndroidOperationController");
}
}
public class IOSInterfaceController implements InterfaceController {
@Override
public void display() {
System.out.println("this is IOSInterfaceController");
}
}