虚线加三角 继承接口
实线加三角 继承类
虚线加箭头 依赖关系(一个类可以被另一个类调用,作为该类方法的参数或返回值,作为该类方法的局部变量)
实线加箭头 关联关系(一个类作为另一个类的成员变量)
空菱形加实线加箭头 聚合关系(部分和主体的关系,多个主体的实例可以共同拥有一个部分的实例)(一对多,通过setget方法注入实例,非对象特有)
实菱形加实线加箭头 组合关系(部分的主体的关系,去掉主体,部分也去掉,部分可以单独去掉)(一体,通过构造方法注入实例)
关联的主要目的是要得知外部对象的属性和方法,而依赖的主要目的是将对象或类信息作为外部状态传进类中形成外蕴。
在java中关联关系是通过实例变量而实现的,同时关联可以是双向的,关联可以有一对多的关系。
依赖在java语言中体现为局部变量、方法参数,以及对静态的方法调用。依赖总是单向的。