一.继承、实现、依赖、关联、聚合、组合的简单代码表示
1.继承关系
1).文字描述
一个类或者接口继承了另一个类或者接口,增加了在原有的方法和属性上增加了新的方法和属性。
2).代码表示
class A{}
class B extends A{}//B继承了A中的所有的方法和属性,对于私有的方法和属性,子类只能是拥有,但无法直接使用。
2.实现关系
1).文字描述
一个class类实现了interface接口
2).代码表示
interface A{}
class B implements A{}//类B实现了接口A,使用关键自implements,接口和接口的继承实用的是extends
3.依赖关系
1).文字描述
依赖关系表示一个类依赖于另一个类的定义,一般依赖关系在java中提现为局部变量、方法的形参,或者对静态方法的调用,这是一种弱关系。
2).代码描述
class A{}
class B{
public void abc(A a){}//在B类中的没有A的属性,而是以形参的方式引入
}
4.关联关系
1).文字描述
一般以类的属性形式出现在关联类中,在java中关联关系一般使用成员变量来实现。又分为聚合关系和组合关系。
2).代码描述
class A{}
class B{
A a;//成员变量引入了A类
}
5.聚合关系
1).文字描述
聚合关系 has a,关联关系较弱,后期使用不会因为对象的删除而删除
2).代码描述
class A{}
class B{
A a;//成员变量引入了A类 A ,B 可以分开
B(A a){
this.a = a;
}
}
6.组合关系
1)文字描述
组合关系 contains a,关联关系较强,整体和部分是不可分割的,他们又共同的生命周期。
2)代码描述
class A{}
class B{
A a = new A();//成员变量引入了A类 //B存在A就存在 B消失A就消失 不可以分开
B(){
this.a = new A();
}
}