三大特性:
1. 封装:
利用抽象数据和基于数据的操作封装在一起,使其构成一个不可分割的独立实体。
优点:减少耦合、减轻维护负担、有效调节性能、降低构建大型系统的风险。
2. 继承:
说白了就是子类可以当作父类来使用。
3. 多态:
运行多态的三个条件:继承、重写、向上转型。
类图
1. 泛化关系
用来描述继承关系,在Java中使用extends关键字。
2. 实现关系
用来实现一个接口,在Java中使用implement关键字。
3. 聚合关系
表示整体由部分组成,但是整体和部分不是强依赖的,整体不存在了部分还是会存在。
4. 组合关系
和聚合不同,组合中整体和部分是强依赖的,整体不存在了部分也不存在了。比如公司和部门,公司没了部门就不存在了。但是公司和员工就属于聚合关系了,因为公司没了员工还在。
5. 关联关系
表示不同类对象之间有关联,这是一种静态关系,与运行过程的状态无关,在最开始就可以确定。因此也可以用 1 对 1、多对 1、多对多这种关联关系来表示。
6. 依赖关系
和关联关系不同的是,依赖关系是在运行过程中起作用的。