设计模式实验报告

  • 格式:doc
  • 大小:46.21 KB
  • 文档页数:3

下载文档原格式

  / 3
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

太原师范学院

实验报告

Experimentation Report of Taiyuan teachers College

系部计算机系年级课程设计模式实训教程

姓名学号日期2018.03.03

项目 Factory Method设计模式

一、实验目的

定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method使一个类的实例化延迟到其子类。

框架使用抽象类定义和维护对象之间的关系。这些对象的创建通常也由框架负责。考虑这样一个应用框架,它可以向用户显示多个文档。在这个框架中,两个主要的抽象是类Application和Document。这两个类都是抽象的,客户必须通过它们的子类来做与具体应用相关的实现。

二、实验原理

试验要求包含典型的 Factory Method结构。

程序能够明确表达设计思想。

三、实验仪器及材料

操作系统: Windows,linux;

开发工具: VC; Java,C#

四、实验方法

设计一个Factory Method案例并实现,并撰写设计报告。

五、实验记录及数据处理

interface Log{

public void writeLog();

}

//文件日志记录器:具体产品

class FileLog implements Log{

@Override

public void writeLog() {

System.out.println("文件日志记录。");

}

}

//数据库日志记录器:具体产品

class DatebaseLog implements Log{

@Override

public void writeLog() {

System.out.println("数据库日志记录。");

}

}

//日志记录器工厂接口:抽象工厂

interface LogFactory{

public Log createLog();

}

//文件日志记录器工厂类:具体工厂

class FileLogFactory implements LogFactory{

@Override

public Log createLog() {

return new FileLog();

}

}

//数据库日志记录器工厂类:具体工厂

class DatabaseLogFactory implements LogFactory{ @Override

public Log createLog() {

return new DatebaseLog();

}

}

//客户端测试类

class FactoryMethod{

public static void main(String[] args) { LogFactory factory;

Log log;

factory = new FileLogFactory();

log = factory.createLog();

log.writeLog();

}$_POST['tel']

}

六、实验结果