设计模式实验报告java.docx

上传人:太** 文档编号:66956287 上传时间:2022-12-23 格式:DOCX 页数:9 大小:92.51KB
返回 下载 相关 举报
设计模式实验报告java.docx_第1页
第1页 / 共9页
设计模式实验报告java.docx_第2页
第2页 / 共9页
点击查看更多>>
资源描述

《设计模式实验报告java.docx》由会员分享,可在线阅读,更多相关《设计模式实验报告java.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、设计模式实验报告学院:交通运输学院专业电子商务班级:姓名: 学号:指导教师:目录一、实例-3 -实例1:模拟变形金刚变形(装饰者模式)-3-1 .UML 图:-3-2源代码:-3-3 .运行截图: -5 -实例2:模拟手机功能的升级过程(装饰者模式)-3-1.UML 图:-3-2源代码:-3-3.运行截图:-5 -、总结-9 -、实例实例1:模拟变形金刚变形(装饰者模式)1.UML 图:2源代码:/抽象组件public abstract class Transformer publicabstractStringintrouduce();publicabstractStringspeak();

2、publicabstractStringaction();/具体组件0 Ptimus Prim 作为抽象组件Transformer的子类基本的功能可在陆地 行驶public class OptimusPrime extends Transformer Overridepublic String introuduce() System, out .printin (;return null;/To change body of generated methods, choose Tools | Templates. )Overridepublic String speak()我是汽车人。n);r

3、eturn null;/To change body of generated methods, choose Tools | Templates.Overridepublic String action() System. out. printin (能够变形);return null;/To change body of generated methods, choose Tools | Templates./装饰(change)也是抽象组件Transformer的子类用于对具体组件的装饰添加新功 能public abstract class Change extends Transfor

4、mer protected Transformer transformer;public Change() )public Change(Transformer transformer) this , transformer = transformer;)/具体装饰汽车一一装饰变形金刚后可以在陆地上移动public class Car extends Change public Car (Transformer transformer) super(transformer);)Overridepublic String introuduce() System. out .printin (原始

5、形态:汽车”);returnull; /To change body of generated methods, choose Tools I Templates. Override public String speak() System. out .printin (不 会说话”);returnull; /To change body of generated methods, choose Tools I Templates. Override public String action() System.out .println (能 够在陆地上移动”);returnull; /To c

6、hange body of generated methods, choose Tools I Templates./具体装饰机器人一一装饰变形金刚后可以说话public class Robot extends Change public Robot(Transformer transformer) super(transformer);)Overridepublic String introuduce()(变化形态:机器人”);returnull; /To change body of generated methods, choose Tools | Templates.)Override

7、public String speak() System. out. printin (会 说话);returnull; /To change body of generated methods, choose Tools | Templates.Overridepublic String action() System. out.printin (能 够在陆地上移动”);returnull; /To change body of generated methods, choose Tools | Templates.具体装饰飞机一装饰变形金刚后可以飞public class Airplane

8、 extends Change public Airplane(Transformer transformer) super(transformer);Overridepublic String introuduce() System. out .println (变化形态:飞机。n );returnull; /To change body of generated methods, choose Tools I Templates.Overridepublic String speak() System, out println (不 会说话。”);returnull; /To change

9、 body of generated methods, choose Tools I Templates.Overridepublic String action () Systm. out .println (不仅能够在陆地上移动,还能在天空中飞翔。”);returnull; /To change body of generated methods, choose Tools I Templates.3.运行截图:琢n :我叫祭天柱、我是汽车人.能够畦厚始形态2汽车才会诀话能够在畔上移动变化形志2机器人会谅话能够在觥上移动甄 形态:飞机.不会诀话噜不仅能够在后坛上移动还能在天空中飞翔嘈攻功构

10、连(恶时闰:1秒实伤II 2:模拟手机功能的升级过程(装饰者模式)1.UML 图:/抽象组件public abstract class Phone public abstract String Functions();/具体组件Simp.-作为抽象组件Phone的子类基本的功能public class Simple extendsPhone Overridepublic String Functions() System. out.printin (功能:当收到来电时,n” + 发出声音提醒”);returnnull; /To change body of generated methods,

11、 choose Tools | Templates./装饰(UpGrad)-也是抽象组件Phone的子类用于对具体组件的装饰添加新功能 public abstract class UpGrade extendsPhone protected Phone phone;public UpGrade() public UpGrade(Phone phone) this.phone = phone;/具体装饰UpGradel 添加震动功能public class Upgrade extendsUpGrade public Upgrade_l(Phone phone) super(phone);priv

12、ate String NewFunctions() System. out .printin (并 且产生震动);returnull; /To change body of generated methods, choose Tools I Templates. Override public String Functions() phone . Functions();NewFunctions();returnull; /To change body of generated methods, choose Tools I Templates.)/具体装饰UpGrade2 添加灯光闪烁提示功

13、能public class Upgrade_2 extendsUpGrade public Upgrade_2(Phone phone) super(phone);)private String NewFunctions() Sy stem .out.pr in tin (伴随有灯光闪烁提示“);returnull; /To change body of generated methods, choose Tools | Templates.Overridepublic String Functions() phone . Functions();NewFunctions();returnul

14、l; / /To change body of generated methods , choose Tools | Templates.3.运行截图:系列手机:第二代手机;功能:当收到来电可,发出声者提更第2代手机二功能,当收到来电时,发出声者提管关且士生硬功第3代手机:功统,当收到来电时,发出声吉提匪关且土生震动 伴随有灯光闪烁提示戌幼枸泡(总AlE: 9秒)5 口整个java设计模式都贯穿着一个原则:面向抽象界面编程,而非 面对实现。在此之前,我们也学习过Java编程,那时学习的主要理念 是面对对象编程,而非面对过程。我感觉在学习Java时学习的是处理 问题的方法,在学习设计模式时学习的是面对某个问题要运用哪些方法 来处理,如何组合方法。在学习Java设计模式的过程中,所要学习的是 其处理问题的思想,而非如何去套用模式解决问题。模式不是数学公 式、也不是物理定律、更不是软件设计中的“法律”条文,一个模式只 是成功解决某个特定问题的设计方案,我们学习它,吸收其处理问题 的理念,而不是让它束缚我们的思想。对Java设计模式的学习是建立于 一定软件开发的基础上的,因此,我们对Java设计模式的学习不应止 步于课堂,还要在日后的学习、工作中加强相应的练习与实践,做到应 对需求编程,合理运用模式,不要为了使用模式而用设计模式。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 解决方案

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁