1、依赖关系
只要类中用到了对方,那么它们之间就是依赖关系。
public class Department {
//第一种Department依赖Employee
Employee employee = new Employee();
//第二种Department依赖Employee
public void testMethod(Employee e){}
//第三种Department依赖Employee
public void testMethod2(){
Employee em = new Employee();
}
//第四种Department依赖Employee
public Employee find(){
return new Employee();
}
}
总结:
- 类中用到的其他类
- 类中方法的形参
- 类中方法内
- 类中方法的返回值
2、泛化关系(继承关系)
依赖关系的一种特例。例如A类继承了B类,AB之间存在泛化关系。
public class Department extends Employee {
}
3、实现关系
依赖关系的一种特例。例如A类实现了B接口,AB之间存在实现关系。
public class Employee implements Idle {
public void method() {
System.out.println("Employee实现了Idle");
}
}
4、关联关系
类与类之间的联系,类似数据库中表与表之间的关系,也是依赖关系的一种特例。
public class Department {
List<Employee> employeeList;
}
public class Employee {
Department department;
}
此案例属于双向关联。这里只举这个例子吧。
5、聚合关系
整体与部分的关系,整体与部分可以分开,是关联关系的一种特例。
public class Man {
//鞋子
Shoes shoes;
//大脑
Brain brain;
}
说明:鞋子和人类是可以分开的,Man与Shoses就属于聚合关系。
6、组合关系
整体与部分的关系,整体与部分不能分开,是关联关系的一种特例。
public class Man {
//鞋子
Shoes shoes;
//大脑
Brain brain;
}
说明:人没有大脑就不能工作,Man与Brain就属于组合关系。
案例比较简单,但是能说明每种关系的本质。初学请指教。