本次实验旨在学习和掌握策略模式、观察者模式和组合模式,通过实际编程的方式深入理解这些设计模式的应用。在第一个实验中,我们使用策略模式实现了一个几何形状家族的抽象类 MyShape,并针对圆形、矩形、椭圆形和三角形等特定几何形状定义了相应的子类。在实现过程中,我们利用了抽象方法来计算面积、周长以及显示形状信息,最终实现了对这些几何形状的绘制。通过这一实验,我们深入理解了策略模式的灵活性和可扩展性,以及如何通过抽象类和子类的结构来实现不同算法的切换和使用。 在接下来的实验中,我们使用观察者模式实现了一个学校发布信息的功能。在这个实现中,我们定义了主题接口和观察者接口,同时实现了 Notice、学生、老师和行政人员等相关类。通过观察者模式的应用,学生、老师和行政人员可以订阅学校发布的信息,同时可以随时接收到最新的通知。这一实验帮助我们更好地理解了观察者模式的灵活性和解耦性,以及在实际应用中如何通过定义主题和观察者的关系来实现消息的传递和处理。 最后,我们实现了组合模式的功能,通过组合模式将对象组织成树形结构来表现“整体-部分”的层次结构。在这个实验中,我们以文件系统为例,实现了对文件和文件夹的组合和操作。通过组合模式,我们可以轻松地对整体和部分进行统一的处理,而不需要在意到底是单个对象还是整体对象。这一实验让我们更好地理解了组合模式的适用场景和实际应用,以及如何通过组合模式来管理复杂结构的对象。 总的来说,本次实验通过对策略模式、观察者模式和组合模式的实际应用,让我们更加深入地理解了这些设计模式的概念和用法。通过实际编程的方式,我们不仅学习到了如何使用这些设计模式来解决实际问题,还加深了对面向对象设计原则的理解,以及如何通过设计模式来提高代码的可维护性、可扩展性和可重用性。希望通过这次实验,同学们能够对策略模式、观察者模式和组合模式有更深入的理解,并能够在将来的软件开发中灵活运用这些设计模式来解决实际问题。
![](https://csdnimg.cn/release/download_crawler_static/78106302/bg6.jpg)
![](https://csdnimg.cn/release/download_crawler_static/78106302/bg7.jpg)
剩余31页未读,继续阅读
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 0
- 资源: 7万+
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 京瓷TASKalfa系列维修手册:安全与操作指南
- 小波变换在视频压缩中的应用
- Microsoft OfficeXP详解:WordXP、ExcelXP和PowerPointXP
- 雀巢在线媒介投放策划:门户网站与广告效果分析
- 用友NC-V56供应链功能升级详解(84页)
- 计算机病毒与防御策略探索
- 企业网NAT技术实践:2022年部署互联网出口策略
- 软件测试面试必备:概念、原则与常见问题解析
- 2022年Windows IIS服务器内外网配置详解与Serv-U FTP服务器安装
- 中国联通:企业级ICT转型与创新实践
- C#图形图像编程深入解析:GDI+与多媒体应用
- Xilinx AXI Interconnect v2.1用户指南
- DIY编程电缆全攻略:接口类型与自制指南
- 电脑维护与硬盘数据恢复指南
- 计算机网络技术专业剖析:人才培养与改革
- 量化多因子指数增强策略:微观视角的实证分析
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)