抽象工厂模式
一、题目:
某软件公司要推出一款新的手机游戏软件,该软件支持IOS、Android和Windows Phone等多个智能手机操作系统平台,针对不同的手机操作系统,该游戏软件提供了不同的游戏操作控制类(OperationController)和游戏界面控制类(InterfaceController),并提供的相应的工厂类来封装这些类的初始化过程。该软件要求具有较好的扩展性,以支持新的操作系统平台,为了满足上述要求,试采用抽象工厂模式对其进行设计。
(1)绘制抽象工厂模式结构视图
(2)给出实例类图并实现代码。
二、所用模式结构视图:
三、实例类图:
四、实例实现代码:
(因为区分,所以在类的前面加了Gj19)
抽象产品-游戏界面控制类
package AbstractFactoryPattern;
/**
* 抽象产品-游戏界面控制类
* @author gong
*
*/
public interface Gj19IInterfaceController {
public void Interface();
}
具体产品-Android游戏界面控制类
package AbstractFactoryPattern;
/**
* 具体产品-Android游戏界面控制类
* @author gong
*
*/
public class Gj19AndroidInterfaceController implements Gj19IInterfaceController {
@Override
public void Interface() {
System.out.println("Android游戏界面控制");
}
}
具体产品-IOS游戏界面控制类
package AbstractFactoryPattern;
/**
* 具体产品-IOS游戏界面控制类
*