+ public- private# protectedUML 规定属性的表达方式:可见性 名称:类型[ = 默认值]UML 规定操作的表示方式:可见性 名称(参数列表)[ :返回类型]

| 访问权限 | 本类 | 本包的类 | 子类 | 非子类的外包类 |
|---|---|---|---|---|
| public | 是 | 是 | 是 | 是 |
| protected | 是 | 是 | 是 | 否 |
| default | 是 | 是 | 否 | 否 |
| private | 是 | 否 | 否 | 否 |
类之间的关系
1.关联关系
单向关联
双向关联
自关联
多重性关联
表示两个关联对象在数量上的对应关系,对象之间的多重性可以直接在关联直线上用一个数字或一个数字范围。
例如一个界面(Form)可以拥有多个按钮(Button),但是一个按钮只能属于一个界面。
聚合关系
聚合关系中,成员对象是整体对象的一部分,但是成员对象可以脱离整体对象独立存在。例如汽车发动机(Engine)是汽车(Car)的组成部分,但是汽车发动机可以单独存在。
代码实现上,成员对象通常作为构造方法,setter 方法或业务方法的参数注入到整体对象中。
组合关系
也表示类之间整体和部分的关系,但是在组合关系中,成员对象与整体对象之间具有同生共死的关系。例如人的头(Head)和嘴巴(Mouth)。
2.依赖关系
大多数情况下,依赖关系体现在某个类的方法使用另一个类的对象作为参数。例如,驾驶员开车在 Dirver 类的 drive() 方法中将 Car 类型的对象 car 作为一个参数传递,以便在 drive() 方法中调用 Car 类的 move() 方法。
代码中依赖关系通常通过 3 中方式实现。
- 将一个类的对象作为另一个类中方法的参数;
- 在一个类的方法中将另一个类的对象作为其局部变量;
- 在一个类的方法中调用另一个类的静态方法。
3.泛化(继承)关系
4.接口与实现关系
也就是一个类实现了一个接口,这个类和这个接口之间的关系。





