一.继承、实现、依赖、关联、聚合、组合的简单代码表示

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类

    B(A a){

      this.a = a;

    }

  }

6.组合关系

1)文字描述

  组合关系 contains a关联关系较强,整体和部分是不可分割的,他们又共同的生命周期。

2)代码描述

  class A{}

  class B{

    A a;//成员变量引入了A类

    B(){

      this.a = new A();

    }

  }

最新文章

  1. gitignore 规范
  2. JAVA与数据库MySQL相连接
  3. Eclipse10个最有用的快捷键[From: Internet]
  4. NBIbatis 微信框架
  5. idea修改运行内存
  6. JavaScript基础-对象<2>
  7. 跟我学机器视觉-HALCON学习例程中文详解-QQ摄像头读取条码
  8. PL/SQL 记录集合IS TABLE OF的使用
  9. 手机自动化测试:appium源码分析之bootstrap七
  10. layui内部使用jQuery
  11. LoadRunner学习笔记
  12. MyBatisPlus忽略映射字段注解
  13. Hive数据倾斜
  14. Redis常用操作--------SortedSet(有序集合)
  15. Herding(hdu4709)三点运用行列式求面积
  16. 【Linux】常见Linux默认的shell
  17. python进行数据分析---python3卡方
  18. C++的中英文字符串表示(string,wstring)
  19. js中的Array
  20. PHP.37-TP框架商城应用实例-后台13-商品管理-扩展分类的添加、显示【数据分组】、搜索分类【多对多】

热门文章

  1. e.stopPropagation()
  2. Difference between model.evaluate vs model.predict in Keras
  3. RecyclerView中notifyDataSetChanged刷新总结
  4. owin Claims-based认证登录实现
  5. 5.String StringBuffer StringBuilder
  6. ASP.NET Core 系列[1]:ASP.NET Core 初识
  7. Eclipse 控制台视图和服务器视图中停止Web服务器的差别
  8. 模板与STL学习简单的笔记
  9. 使用截图工具FastStone Capture
  10. 在 vSphere 5.x/6.0 中配置 Network Dump Collector 服务 (2002954)