设计模式上机实验二实验报告
更新时间:2023-12-04 02:35:01 阅读量: 教育文库 文档下载
设计模式实验二
实 验 报 告 书
专业班级 软 件 0703 学 号 3901070324 姓 名 吉亚云 指导老师 刘 伟 时 间 2010年4月 24日
中南大学软件学院
1
实验二 设计模式上机实验二
一、实验目的
使用PowerDesigner和任意一种面向对象编程语言实现几种常用的设计模式,加深对这些模式的理解,包括装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式。
二、实验内容
使用PowerDesigner和任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,包括根据实例绘制相应的模式结构图、编写模式实现代码,运行并测试模式实例代码。
三、实验要求
1. 正确无误绘制装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式的模式结构图;
2. 使用任意一种面向对象编程语言实现装饰模式、外观模式、代理模式、职责链模式、命令模式、迭代器模式、观察者模式、状态模式、策略模式和模板方法模式,代码运行正确无误。
四、实验步骤
1. 使用PowerDesigner绘制装饰模式结构图并用面向对象编程语言实现该模式; 2. 使用PowerDesigner绘制外观模式结构图并用面向对象编程语言实现该模式; 3. 使用PowerDesigner绘制代理模式结构图并用面向对象编程语言实现该模式; 4. 使用PowerDesigner绘制职责链模式结构图并用面向对象编程语言实现该模式; 5. 使用PowerDesigner绘制命令模式结构图并用面向对象编程语言实现该模式; 6. 使用PowerDesigner绘制迭代器模式结构图并用面向对象编程语言实现该模式; 7. 使用PowerDesigner绘制观察者模式结构图并用面向对象编程语言实现该模式; 8. 使用PowerDesigner绘制状态模式结构图并用面向对象编程语言实现该模式; 9. 使用PowerDesigner绘制策略模式结构图并用面向对象编程语言实现该模式; 10. 使用PowerDesigner绘制模板方法模式结构图并用面向对象编程语言实现该模式。
五、实验报告要求
1. 提供装饰模式结构图及实现代码; 2. 提供外观模式结构图及实现代码; 3. 提供代理模式结构图及实现代码; 4. 提供职责链模式结构图及实现代码;
2
5. 提供命令模式结构图及实现代码; 6. 提供迭代器模式结构图及实现代码; 7. 提供观察者模式结构图及实现代码; 8. 提供状态模式结构图及实现代码; 9. 提供策略模式结构图及实现代码; 10. 提供模板方法模式结构图及实现代码。
六、实验结果
(1) 装饰模式
某图书管理系统中,书籍类(Book)具有借书方法borrowBook()和还书方法returnBook() 。现需要动态给书籍对象添加冻结方法freeze()和遗失方法lose()。使用装饰模式设计该系统,绘制类图并编程实现。
Book+borrowBook (): void+returnBook (): void0..*0..1MyBook+<
final class MyBook implements Book {
void borrowBook(); void returnBook();
public void borrowBook(){ }
3
System.out.println(\);
}
public void returnBook(){ }
System.out.println(\);
abstract class BookDirector implements Book { }
class NewBook extends BookDirector { }
public class BookDirectorClient {
public static void main(String a[]) public NewBook(Book book) { }
public void freeze() { }
public void lose() { }
System.out.println(\); System.out.println(\); super(book);
System.out.println(\);
private Book book;
public BookDirector(Book book) { }
public void borrowBook(){ }
public void returnBook(){ }
book.returnBook(); book.borrowBook();
System.out.println(\); this.book=book;
4
}
{ }
//半透明
Book book=new MyBook();
NewBook newBook=new NewBook(book); newBook.borrowBook(); newBook.returnBook(); newBook.freeze(); newBook.lose();
运行结果:
(2) 外观模式
在电脑主机(Mainframe)中,只需要按下主机的开机按钮(on()),即可调用其他硬件设备和软件的启动方法,如内存(Memory)的自检(check()),CPU的运行(run()),硬盘(HardDisk)的读取(read()),操作系统(OS)的载入(load())等,如果某一过程发生错误则电脑启动失败。使用外观模式模拟该过程,绘制类图并编程实现。
MainFrame----memorycpudiskos: Memory: CPU: HardDisk: OS+on (): void+off (): void0..10..10..10..*HardDisk+read (): void+off (): void0..10..*Memory+check (): void+off (): voidCPU0..*0..*OS+load (): void+off (): void+run (): void+off (): void
package FacadePattern;
class Mainframe {
private Memory memory;
private CPU cpu; private HardDisk disk;
5
正在阅读:
设计模式上机实验二实验报告12-04
小鹿的玫瑰花教学设计(优秀4篇)03-24
国王和玫瑰花作文600字06-19
我爱玫瑰花作文500字06-27
高考文综这样做错题集,成绩肯定能提高!-精选学习文档10-24
玫瑰花的作文300字(精选8篇)02-05
玫瑰花的观察日记300字【最新3篇】03-25
仙人掌与玫瑰花作文600字06-23
玫瑰花和啄木鸟作文450字06-24
玫瑰花找朋友作文550字07-14
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 实验
- 设计模式
- 上机
- 报告
- 丹佛斯变频器经验分享
- 精选2017 - 2018学年高中地理第二单元走可持续发展之路2.1人地关系思想的演变试题鲁教版必修3
- 农用地转用是指将农用地转为建设用地
- workbench球体划分网格过程
- 马斯洛的需要层次理论
- 高一生物期中考试试卷
- 新形势下思想政治工作虚变实
- 东北师范大学中外教育史17秋在线作业3
- 政府非税收入管理系统研讨
- 弟子规全文解释—弟子规全文翻译
- (一)股票债券内在价值计算题
- 个人理财各章复习要点
- 第四章 分布广泛的细菌和真菌
- 无菌检查法-2015版中国药典-电子版
- 房屋建筑学试题及答案 精剖析
- 大学物理力学试题(1)
- 八字人生轨迹
- 雨污水管线检查井技术交底讲解
- 当代世界学前教育模拟卷(一)答案
- 拥军优抚安置工作科学发展观调研报告