类与类之间的关系通常有4种,即依赖关系(Dependency)、泛化关系(Generalization)、关联关系(Association)、实现关系(Realization)
【概念】表示两个或多个模型元素之间语义上的连接关系
【绘图方式】虚线箭头,箭头指向被使用者
【概念】描述类的一般和具体之间的关系,描述的“is a kind of ”的关系
【绘图方式】实线空心三角箭头,箭头指向父类
【继承方式】
一个类只有一个父类
一个类可以有多个父类,可以从每一个父类中获得允许继承的信息
【概念】表示一个事物的对象与另一个事物的对象之间的语义上连接,简单的理解为两个类或类与接口之间的强依赖关系
【绘图方式】实线箭头,双向箭头或无箭头
【包括】
【概念】描述的是部分与整体关系,描述了“has a”的关系,部分离开整体可以单独存在
【绘图方式】空菱形的实线,头部指向整体
【概念】一种更强形式的关联,在整体中拥有管理部分特有的职责,也被称为强聚合关系,部分不能脱离整体存在
【绘图方式】实菱形的实线,头部指向整体
【概念】将一种模型关系与另一种模型关系连接起来,从而说明和其实现之间的关系,简单的理解为一个类或多个类实现一个接口
【绘图方式】封闭空箭头的虚线,箭头指向接口
泛化和实现关系的区别:
泛化关系是指同一语义层的元素连接起来,通常在同一模型内;实现关系将不同语义层内的元素连接起来,通常在不同模型内。
类图显示了系统的静态结构。类图就是用于对系统中的各种概念进行建模,并描绘它们之间关系的图。再简单一点,类就是一组具有相同结构、行为、关系的一群对象。
我们一张图总结类组成的基本概念:
对于类的可见性描述了该属性是否对于其他类能够可见,从而是否可以被其他类进行引用。可见性包含4种,公有类型(public)、受保护类型(protected)、私有类型(private)、Implementation。
1、公有类型(public):允许在类的外面使用或查看该属性
2、受保护类型(protected):允许子类访问父类中受保护类型的属性
3、私有类型(private):只有类本身能够访问,外部一概不能
4、Implementation:该属性仅仅在被定义的包中才能够可见
接口是一种特殊的类,所有接口都是有构造型的类。
表示方式:实线小圆圈 + 名称
接口关系:接口同样具有依赖和泛化的关系
依赖:一个类通过依赖关系与接口相连接,仅仅依赖于接口中的操作
泛化:跟类之间泛化关系同理