设计模式实验报告

更新时间:2023-10-26 18:29:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《设计模式》实验指导书

10学时

教 师: 张 凯

实验一 工厂模式的应用

【实验目的】

1) 掌握工厂模式(Factory)的特点 2) 分析具体问题,使用工厂模式进行设计。

【实验内容和要求】

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

【模式UML图】

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

public class FactoryMethod {

public static void main(String[] args) { Computer c;

Factory f=new DellFactory(); c=f.getComputerType(); c.ComputerType();

f=new LenovoFactory();

c=f.getComputerType(); c.ComputerType(); f=new AcerFactory(); c=f.getComputerType(); c.ComputerType(); } }

interface Factory{

Computer getComputerType(); }

class DellFactory implements Factory{ @Override

public Computer getComputerType() { return new Dell(); } }

class AcerFactory implements Factory{ @Override

public Computer getComputerType() { return new Acer(); } }

class LenovoFactory implements Factory{ @Override

public Computer getComputerType() { return new Lenovo(); } } /**

* 电脑品牌 */

interface Computer{

public void ComputerType(); }

class Dell implements Computer{ @Override

public void ComputerType() {

// TODO Auto-generated method stub System.out.println(\); } }

class Acer implements Computer{ @Override

public void ComputerType() {

System.out.println(\); } }

class Lenovo implements Computer{ @Override

public void ComputerType() {

// TODO Auto-generated method stub

System.out.println(\); } }

【运行截图】

【实验小结】

通过本次实验,学会了使用工厂方法模式。工厂方法模式的适用性如下:

当一个类不知道它所必须创建的对象的类时。

当一个类希望由它的子类来指定它所创建的对象时。

当类将创建对象的职责委托给多个帮助子类中的某一个,并且希望将哪一个帮助子类是代理这一信息局部化时。

实验二 抽象工厂模式的应用

【实验目的】

1) 掌握抽象工厂模式(Abstract Factory)的特点 2) 分析具体问题,使用抽象工厂模式进行设计。

【实验内容和要求】

麦当劳(McDonalds)和肯德基(KFC)快餐店都经营汉堡(Hamburg)和可乐(Cola),用C#控制台应用程序实现这两个快餐店经营产品的抽象工厂模式。绘制该模式的UML图。

【模式UML图】

【模式代码】

public class AbstractFactoryTest {

public static void main(String[] args) { Hamburg h; Cola c;

本文来源:https://www.bwwdw.com/article/kok2.html

Top