每日总结

[实验任务一]:UML复习

阅读教材第一章复习UML,回答下述问题:

面向对象程序设计中类与类的关系都有哪几种?分别用类图实例说明。

关联(Association):

定义:关联表示一个类与另一个类之间的连接。一个类可以与另一个类建立关联,这表示两者之间存在某种关系。

示例:一个学校类与一个学生类之间可以建立关联,表示学校与学生之间存在关系。

聚合(Aggregation):

定义:聚合表示一个类可以包含另一个类,但它们之间的生命周期可以独立存在。聚合关系通常是弱的整体部分关系。

示例:一个图书馆类可以包含多个书籍类,但即使图书馆不存在了,书籍仍然可以存在。

类图示例:

 

组合(Composition):

定义:组合是一种强的整体部分关系,表示一个类包含另一个类,而且它们的生命周期是相互依赖的。如果外部类不存在了,内部类也将不存在。

示例:一个汽车类包含多个轮子类,如果汽车不存在了,轮子也将不存在。

类图示例:

 

继承(Inheritance):

定义:继承表示一个类可以从另一个类继承属性和行为,并且可以添加自己的属性和行为。

示例:一个动物类可以派生出猫类和狗类,它们都具有动物的一般特性,但也有各自特有的特性。

类图示例:

 

依赖(Dependency):

定义:依赖表示一个类在实现过程中依赖于另一个类的服务或方法。

示例:一个订单类可能依赖于一个支付类来完成支付操作。

类图示例:

 

 

 

[实验任务二]:单一职责原则

登录模块在实际项目开发中很常见,请按照教材28页(PPT49页)利用单一职责原则重构后的类图实现这一模块。

实验要求:

1.提交源代码和对应的数据库文件(注意将此模块保存,以备以后使用);

2.注意编程规范。

代码见附件1

[实验任务三]:依赖倒转原则与合成复用原则

在一画图软件中提供了多种大小不同的画笔,并且可以给画笔指定不同的颜色,某设计人员对画笔进行了如上图所示的设计。通过分析,可以发现增加画笔的种类和颜色会使得系统中类的数目急剧增加,请根据合成复用原则和依赖倒转原则对上述设计进行重构。

实验要求:

1.提交源代码;

2.画出重构后的类图。

答:1.

 

2.代码见附件2

posted @ 2023-10-23 22:15  一个小虎牙  阅读(20)  评论(0编辑  收藏  举报