UML类图简介
1. 类(Class):
在Java中,类用于定义对象的属性和行为。下面是一个简单的Java类示例:
2. 对象(Object):
在Java中,对象是类的实例化。下面是如何创建一个类的对象的示例:
3. 关系(Relationship):
在Java中,类之间的关系通常通过继承、实现、关联等方式来表示。下面是一个继承关系的示例:
4. 接口(Interface):
在Java中,接口用于定义一组方法签名,而不包含方法的实现。下面是一个接口的示例
实现接口的类需要提供接口中定义的方法的实现。下面是一个实现接口的类的示例:
在 UML 类图中,有四种主要的关系:关联(Association)、聚合(Aggregation)、组合(Composition)和依赖(Dependency)。
1.关联(Association):
关联表示两个类之间的联系,通常用一条直线连接两个类,箭头指向关联的方向。关联可以是单向的或双向的。在代码中,关联通常体现为类之间的字段。
在这个例子中,Car类和Engine类之间存在关联,Car类包含一个 Engine 类型的字段。
2.聚合(Aggregation):
聚合是一种关联关系,表示整体与部分之间的关系,但是部分可以独立存在于整体之外。在 UML 类图中,聚合通常用一条带空心菱形的直线表示。
在这个例子中,Department类包含了一个 List 类型的 employees 字段,该字段存储了 Employee 对象的引用,但是 Employee 对象可以独立于 Department 对象存在。
3.组合(Composition):
组合也是一种关联关系,表示整体与部分之间的关系,但是部分不能独立存在于整体之外,它们具有相同的生命周期。在 UML 类图中,组合关系通常用一条带实心菱形的直线表示。
在这个例子中,House类包含了 Room 类型的 livingRoom 和 bedroom 字段,这些房间是整个 House 的一部分,不能独立存在。
4.依赖(Dependency):
依赖表示一个类(或对象)依赖于另一个类(或对象)的关系,通常表现为一个类在其方法中使用到了另一个类的对象。在 UML 类图中,依赖关系通常用带箭头的虚线表示。
在这个例子中,Car类的 drive() 方法依赖于 Engine 类,因为它在方法中创建了 Engine 对象并调用了其 start() 方法。