类的六大关系有依赖、泛化、实现、关联、聚合、组合,其中泛化、实现、关联、聚合、组合关系是依赖关系的特例。
依赖
类中使用到了对方(其他类),那么他们之间就存在着依赖关系,如:
//伪代码
public class A{
private B b;//成员变量
public C modify1(){//方法的返回类型
}
public viod modify2(D d){//方法的接收参数类型
F f = new F();//方法中使用
}
}
public class B{}
public class C{}
public class D{}
public class F{}
泛化
泛化关系实际指的是继承关系,他是依赖关系的特例
public abstract class A{
...
}
class B extends A{}//B类继承A类,他们之间存在泛化关系
实现
实现关系实际指的是A类实现B接口
public interface A{...}
class B implements A{...}//B类实现A类,他们是实现关系
关联
关联关系:类与类之间的关系,具有导航性:即双向关系或单向关系
public class A{
private B b;
}
public class B{}//单项一对一关系
--------------------------------------------------------
public class A{
private B b;
}
public class B{
private A a;
}//双项一对一关系
聚合
聚合关系:整体和部分的关系,整体与部分可以分开,具有关联的导航性和多重性
public class Computer{
private Mouse mouse;
public void setMouse(Mouse mouse){
this.mouse=mouse;
}
}
public class Mouse{//鼠标可以是单独的个体,可以与电脑一起使用
...
}
组合
组合关系:整体和部分的关系,但是与聚合关系的不同是它的整体与部分不能分开
比如在操作两张具有关联的表的实体类,这两个实体类具有依赖关系,那么在对一个类进行操作时,另一个类的数据也会被改变。