Java连载60-类之间的六种关系

2019-12-13 06:33:33来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

Java连载60-类之间的六种关系

一、类之间的关系

1.泛化关系(UML图:实线空心三角形箭头,箭头指向被继承方)

类和类、接口与接口之间的继承称为泛化关系

 

public class A {}

class B extends A{}

public interface A{}

class B extends A{}

 

 

2.实现关系(?UML图:虚线空心三角想箭头,箭头指向被实现方)

类和接口之间的关系

 

public interface A{}

class B implements A{}

 

 

3.关联关系(UML图:实线v字箭头,箭头指向被调用方)

类与类之间的连接,在java中通常使用成员变量来实现

 

public class Me{

  String name;

  String addr;

  String telephone;

  Fridend f1;//在当前对象中含有指向其他对象的引用

  Me(Friednd f1){

     this.f1 = f1;

  }

}

class Friend{

  String name;

  String addr;

  Friend(String name){

    this.name = name;

  }

}

 

?

4.聚合关系(UML图:实线空心菱形箭头,箭头指向整体)

是关联关系中的一种,是较强的关联关系,是整体和部分的关系,?如:汽车和轮胎,他与关联关系不同,关联关系的类处在同一个层次上,而聚合关系的类出自啊不平等的层次上,一个代表整体,一个代表部分,在java中?实例变量来体现。

 

//ClassRooom就是整体

public class ClassRoom{

  //ClassRoom和List集合属于关联关系,在同一个层次上

  //ClassRoom和Student属于聚合关系,一个是整体一个是部分

  List<Student> stus;//Student就是部分

  //聚合关系:整体不依赖部分

 

 

  ?5.合成关系(UML图:实线实心菱形箭头,箭头指向整体)

 

public class Person{

  List<limbs> l;

  //人和List是关联关系

  //人和四肢是合成关系,人是整体,四肢是部分

  //合成关系和聚合关系是相似的,区别在于:整体和部分是紧密相连的

  //整体的生命周期决定部分的生命周期

}

 

 

6.依赖关系(UML图:虚线V字箭头,箭头指向被调用方)

 

public class Test{

  public void m1(){

    //局部变量

    User u = new User();//依赖关系,必须写在方法里面,方面外面不算

  }

}

class User{}

 

 

三、源码:

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

 


原文链接:https://www.cnblogs.com/ruigege0000/p/12026671.html
如有疑问请与原作者联系

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Java自学-集合框架 Collection

下一篇:JPA中实现单向多对一的关联关系