Logo
Section 1 / 6

对象关系回顾

理解现实世界中物体之间的关系。

导入

对象关系回顾

理解现实世界中物体之间的关系。

对象之间的关系

在我们的日常生活中,经常会遇到各种重复出现的模式、对象之间的关系以及层级结构。通过探索和理解这些关系,我们可以更深入地了解现实世界中物体的行为,从而提升对它们的认知。

例如,假设某天我们走进一个房间,看到一个长方形的物体,其表面平坦,并且周围有四个带有平坦顶部的四条腿的物体。我们很容易就能识别出那个长方形的物体是一张桌子,而那四个带腿的物体是椅子。即使从未见过这个房间,我们也能直观地理解:桌子是用来放置物品的,椅子是用来坐的。此外,我们还意识到,如果移走桌子,椅子就失去了与之搭配的支撑面。

...

令人惊叹的是,即便从未见过这些物体,我们仍能立刻识别出它们。原因在于我们对家具这一概念有基本的理解,并能够识别出这些物体正是该概念的具体体现。我们知道,桌子通常有一个平坦的表面用于放置物品,而椅子则通常是为坐而设计的。更重要的是,我们明白椅子是与桌子一起使用的,没有桌子,椅子就失去了实际用途。正是基于这种对家具的认知,我们才能轻松推断出房间中这些具体物体的特性。

对象之间的关系

在日常生活中,我们经常遇到各种对象之间的关系,并为此赋予特定的术语。例如,可以说图书馆拥有书籍,音乐家拥有吉他,篮球是比赛所必需的,食谱需要特定的食材。我们还可以理解一辆汽车包含方向盘,人体包含心脏。这些关系类型帮助我们理解不同对象之间的联系及其在日常生活中的意义。

在编程世界中,正如在现实生活中一样,我们也面临大量重复出现的模式、关系和层级结构。这些支配现实世界物体的规律可以被应用于我们编程时创建的对象上。深入理解这些模式,有助于提高代码的可重用性,并构建更加灵活和通用的类。

在前一章中,我们学习了多种概念,包括使用循环和函数来迭代执行任务,以及利用结构体和类来创建特定类型的对象。在此基础上,本章将重点从面向对象编程(OOP)的角度回顾不同的对象关系,并探讨它们在 C++ 类中的实际应用,进一步加深对这些关系在真实场景中实现方式的理解。

关系的类型

我们将讨论五种对象间的关系:

  1. 组合
  2. 聚合
  3. 关联
  4. 继承
  5. 依赖

作为使用 C++ 的程序员,我们可以在代码中有效地表达这些对象关系的思想。在接下来的课程中,我们将通过编程实例进一步探索这些关系,以获得更直观的实际理解。

迈向面向对象编程

组合及其实现