Java中的类的关系:
(1)A is-a B 继承 实
(2)A has-a B 组合 聚合 关联
(3)A use-a B 依赖
类的关系-继承:
- 子类继承父类,关键字extends实现。
- 子类可以直接调用父类中的(public和protected修饰的)属性和方法当做自己的来使用
- 子类可以重写父类的方法。
- 每一个类都有继承类,如果不写则默认继承object类;
- Java中只能有一个继承类(单继承)。目的是为了让类变得更加安全。可以通过传递的方式实现多继承的效果。后续还会有多实现的方式实现类似的效果。
类的关系-包含关系
- 组合:整体和部分的关系,不可分割,要出现都出现,要消亡都消亡。比如人和内脏的关系
- 聚合:整体和部分的关系,创建的时候可能是分开的。比如汽车和车轮、电脑和主板。
- 关联:整体和部分关系,可以分割。通过某件事联系在一起。例如:人有电脑
包含关系,是将一个类的对象当做另一个类的属性来存储,即在创建这个类时,必须有这个对象在。
类的关系-依赖关系
不是整体和部分的关系,某一件事情产生了关系,临时组合在一起。这件事一做完关系就解散。(即只有在需要的时候才创建对象)
Java程序体现的形式为:
在一个类的方法中需要使用另一个类的对象。
两种方式引入这个类的对象:
第一个可以在方法中传递参数,将另一个类的对象传递进来;
第二个可以在方法中自己创建,在方法中调用另一个类的构造函数创建对象。
设计类的关系的原则:高内聚低耦合
耦合度:紧密 继承(实现)>组合>聚合>关联>依赖