一.实验目的
- 熟悉建模工具。
- 掌握简单工厂模式、工厂方法模式、抽象工厂模式,并进行设计应用。
二、实验内容
(1)、 简单工厂模式使用简单工厂模式模拟女娲(Nvwa)造人(Person),如果传入参数M,则返回一个Man对象,如果传入参数W,则返回一个Woman对象,请实现该场景。现需要增加一个新的Robot类,如果传入参数R,则返回一个Robot对象,对代码进行修改并注意女娲的变化。
(2)、 工厂方法模式海尔工厂(Haier)生产海尔空调(HaierAirCondition),美的工厂(Midea)生产美的空调(MideaAirCondition) 。使用工厂方法模式描述该场景,绘制类图并编程实现。
(3)、 抽象工程模式电脑配件生产工厂生产内存、CPU等硬件设备,这些内存、CPU的品牌、型号并不一定相同,根据下面的“产品等级结构-产品族”示意图,使用抽象工厂模式实现电脑配件生产过程并绘制相应的类图,绘制类图并编程实现。
三.简单工厂模式
1.题目分析:Human抽象产品类,它可以是一个接口,也可以是一个抽象类,其中包含了所有产品 具有的业务方法。具体产品类(Man、Women、Robot)是抽象产品类Human接口的子类,是一种具体产品,实现了在Human接口中定义的业务方法。
工厂类HumanFactory,是工厂类,它是整个系统的核心,它提供了静态工厂方法makeHuman()工厂方法中包含一个字符串类型的参数,在内部业务逻辑根据参数值的不同实例化不同的具体产品类,返回相应的对象。
2.UML类图
3.程序实现
public class Client {
public static void main(String[] args) {
try{
HumanFac h = Nvwa.producehuman("M");
h.makehuman();
}catch(Exception e){
System.out.println(e.getMessage());
}
}
}
public interface HumanFac {
public void makehuman();
}
public class Nvwa {
public static