面向对象设计第一篇

类与类之间的关系

  • 1纵向关系;
    继承:父与子的关系——extends
    实现:类对接口的实现——implements

  • 2横向关系:取决于语义来理解

*依赖:
双方的地位往往是独立平等的(地位)
是偶尔的、临时性的、不频繁的(依赖程度)
代码层面的表现形式而言,往往是局部的变量
类B以参数的形式传入类A的方法。
类B以局部变量的形式存在于类A的方法中。
类A调用类B的静态方法。

。例子:酒与一次性杯子

*关联:
双方的地位往往是独立的、平等的(地位)
是长期的、稳定的、频繁的(依赖程度)
代码层面的表现形式而言,关联往往以全局属性的形式存在
。例子:电脑和硬盘

*聚合:
双方的地位不是平等的,是整体和部分之间的关系(地位)
是长期的、稳定的、频繁的,这种关系比关联更强,以至于在形式上出现了整体
和部分之间的关系。整体和部分都有自己的生命周期,一方的消失另外一方不
会跟着消失。(依赖程度)
代码层面的表现形式而言可参考关联
例子:勇士队和库里

*组合:
双方的地位不是平等的,是整体和部分之间的关系(地位)
比聚合更强,部分的生命周期取决于整体,部分随着整体的消失而消失(依赖程度)
代码层面的表现形式而言可参考关联
区分是聚合还是组合的核心点是在生命周期
;例子:教室和教学楼

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 代码修改来自 gopacket 的example 源代码可以编译执行。 结果: 代码片段 这部分主要是,通过tcp...
    asmcos阅读 9,497评论 4 3
  • 我一直想写写我的婆婆,这个世界上有时我觉得比亲妈还亲的人。 我有时突然想到我妈和我嫂子的关系,觉得比她跟我亲。而我...
    师子师子阅读 814评论 0 0
  • 今天和女朋友一起参加她同学的婚礼,他们高中同学坐一桌,除了她还有一个女同学带着男朋友,满桌一介绍发现大家都是国内知...
    希望有机大分子阅读 502评论 0 1
  • 快艇 乘风破浪 海中央月牙形的小岛 我们来了 帐篷 星星点点 绿油油清香的草地 我们来了 野牛 悠闲自得 茂密山林...
    罗罗书房阅读 184评论 0 1