UML模型图中类图是依据系统结构从静态观点描述系统的视图,它定义系统中的对象和类及类之间的关系,以及类的内部结构,即类的属性和操作。

通过分析图书管理系统的用例模型和系统功能需求,作为借阅者(Borrower)需要有查书、借书、还书的行为(BorrowerInf),老师(Teacher)和学生(Student)作为借阅者时可借数量不一样,书目标题(Title)作为查找对象也必不可少。它们之间关系如何?

借阅者(Borrower)在借一本书后需要生成一条借阅记录(Loan),该借阅记录包含书的相关信息(Item)。每个借阅者可以借多本书,所以每个借阅者的借阅记录可以有多条,多条借阅记录合起来构成该借阅者的借阅信息(BorrowedInfo)。作为特色预约功能,借阅者在预约后需要生成一条预约记录(Reservation)。

实现(Realization):是一种类与接口的关系,表示类是接口所有特征和行为的实现。例如:借阅者能查找书籍。

依赖(Dependency):是一种使用的关系,有单向依赖和双向依赖,但避免使用双向依赖。例如:借阅者查找结果依赖标题。

泛化(Generalization):是一种继承关系,指定了子类继承父类的所有特征和行为。例如:借阅者是老师或者学生。

关联(Association):是一种拥有的关系,它使一个类知道另一个类的属性和方法。例如:借阅者的借阅记录或预约记录。

聚合(Aggregation):是整体与个体的关系,可以理解成把个体聚集在一起。例如:借阅者的多条借阅记录。

组合(Composition):是整体与局部的关系,整体的对象负责代表局部的对象的生命周期,可以理解成整体是由局部组成的。例如:借阅记录必须要有相关书籍信息。

PS:

箭头总是指向内容和范围较小的类,所谓“青出于蓝胜于蓝”,子类的内容是可以多于父类的。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐