软件设计体系结构-实验报告1

实验名称     工厂模式的应用                      日期 2019 03 25

一、实验目的:

1) 掌握工厂模式(Factory)的特点

2) 分析具体问题,使用工厂模式进行设计。

 

有一个OEM制造商代理做HP笔记本电脑(Laptop),后来该制造商得到了更多的品牌笔记本电脑的订单Acer,Lenovo,Dell,该OEM商发现,如果一次同时做很多个牌子的本本,有些不利于管理。利用工厂模式改善设计,用JAVA语言实现  (C#控制台应用程序实现)该OEM制造商的工厂模式。绘制该模式的UML图。

 

 

二、实验环境:

 

 

 

三、实验内容:

【模式代码(JAVA语言实现)】

package 软件设计体系结构;

public class ComputerTest {

    public static void main(String[] args) {

        ComputerFactory computerFactory1 = new DellFactory();
        Computer computer1 = computerFactory1.getComputerType();
        computer1.computerType();

        ComputerFactory computerFactory2 = new LenovoFactory();
        Computer computer2 = computerFactory2.getComputerType();
        computer2.computerType();

        ComputerFactory computerFactory3 = new AcerFactory();
        Computer computer3 = computerFactory3.getComputerType();
        computer3.computerType();

    }
}
package 软件设计体系结构;

public class Acer implements Computer {
    public void computerType(){
        System.out.println("产生一台Acer电脑");
    }
}
package 软件设计体系结构;

public class AcerFactory implements ComputerFactory {

    public Computer getComputerType(){
        return new Acer();
    }
}
package 软件设计体系结构;

public interface Computer {
    public void computerType();
}
package 软件设计体系结构;

public interface ComputerFactory {
    Computer getComputerType();
}
package 软件设计体系结构;

public class Dell implements Computer {
    public void computerType(){
        System.out.println("产生一台Dell电脑");
    }
}
package 软件设计体系结构;

public class DellFactory implements ComputerFactory {

    public Computer getComputerType(){
        return new Dell();
    }
}
package 软件设计体系结构;

public class Lenovo implements Computer {
    public void computerType(){
        System.out.println("产生一台Lenovo电脑");
    }
}
package 软件设计体系结构;

public class LenovoFactory implements ComputerFactory {
    public Computer getComputerType(){
        return new Lenovo();
    }
}

【运行截图】

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值