发布于 2026-01-06 5 阅读
0

面向对象编程概念(OOP)简化版!!!DEV 全球展示挑战赛,由 Mux 呈现:展示你的项目!

面向对象编程概念(OOP)简化版!!!

替代文字

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

替代文字

在本文中,我想介绍一种优美的编程范式,它可以解决许多现实生活中的编程问题。

让我们一起来了解一下什么是面向对象编程(OOP),OOP背后的理念以及OOP的主要概念。本文将以非编程术语,也就是通俗易懂的语言进行阐述。

注:读完本文并理解后,学习面向对象编程语言就会变得容易。这将有助于你更好地理解任何面向对象编程语言。

什么是面向对象编程(OOP)?

面向对象编程是一种编程范式/方法,用于编写针对给定问题陈述的解决方案。

简单来说,它是一种编写计算机程序的方式,它使用“对象”的概念作为参考来表示数据和方法。

举例来说:假设要造一辆汽车。造车需要考虑很多方面。

  1. 绘制汽车外观的设计蓝图。
  2. 制造汽车所需的材料。
  3. 建造者应该能够接触到的东西。
  4. 驾驶员可以接触到的东西。
  5. 与其相关的事物应该如何运作
  6. 不同的事物如何帮助其他事物发挥作用

这里,数据指的是事物本身,而方法则是与这些数据相关的功能。面向对象范式的基本思想是将数据和功能绑定在一起,以便于解决现实世界的问题。

基本上,一些现实世界的问题可以通过采用面向对象的方法得到有效解决,例如上面的例子,制造汽车就是问题陈述。

我们将如何着手,随着工作的推进自然就会明白。

你可能已经在上面看到了“对象”这个词。那么,对象是什么呢?

对象面向对象编程的基本单元。它是由数据和方法(事物及其功能)组成的单元,并根据蓝图构建而成。

以上述例子为例,我们可以说,汽车是一个对象。它将所有部件和功能整合在一起,从而具备车辆的行为能力。

说到蓝图,就不得不提另一个重要的术语“”,它本质上就是创建对象的蓝图。

例如,对于汽车蓝图,我们会考虑一些基本特征,例如燃料、燃料类型、要使用的发动机、外观设计、车辆点火后的功能等等。

利用蓝图可以批量生产汽车,而无需从头开始重新制造机器。

这基本上清晰地展现了面向对象编程
的本质 。

替代文字

现在,让我们来看一下面向对象编程概念的主要特征:

  • 抽象
  • 封装
  • 遗产
  • 多态性

你说的“抽象”是什么意思

其含义很简单,就是展示模块的基本特征,隐藏内部功能的细节。

例如:驾驶员使用油门踏板时,无需了解其机械原理。他只需要知道,踩下油门踏板,汽车就会加速。

替代文字

水由氢和氧组成,但我们看到的却是液态水(抽象概念)。

现在我们来了解另一个术语,“封装”。

它是一种对事物(数据)进行封装的方法,某种程度上,它也能发挥作用,实现一些富有成效的目标(方法)。本质上,它是将数据和方法结合起来进行分类。换句话说,我们也可以将其定义为:在无需完全理解问题领域的情况下,提出问题解决方案的一种方式。

替代文字

类/接口是帮助在编程层面实现封装的特性之一。

例如:在汽车设计/集成团队中,负责汽车照明系统的成员不需要了解汽车制动系统的工作原理,就这么简单。
替代文字

现在,解释一下“继承这个术语。

顾名思义,继承”是指将某些特性(方法)或数据从父模型传递给子模型的一种方式。这是面向对象编程(OOP)中的一项重要特性,它本质上允许你重新定义模型。

替代文字

另一个例子:假设有一款名为 X 的汽车,并且计划推出 A 型和 B 型两款车型。A

型的设计和实现已经完成。B 型除了轮胎和碟刹系统之外,其他方面几乎与 A 型相同。

因此,B 型可以沿用 A 型的设计,并根据自身对轮胎和碟刹系统的需求进行调整。明白了

吗?他们无需从头开始重新设计,而是直接继承 A 型的设计和功能。

最后,我们来谈谈“多态性”。

多态性是指定义同一对象不同实现方式的特性。

简单来说,“多态性是一种允许以不同形式定义相同功能的特性。

一个简单但有效的例子是将“Cut”用作多态词;

  • 外科医生会开始切开皮肤。
  • 理发师开始给某人剪头发。
  • 演员会突然停止当前场景的表演。

替代文字

另一个例子:汽车 X 有 A 型和 B 型两种车型,两种车型都需要燃料才能行驶。

例如,A型车使用汽油,而其他车型则使用柴油。因此,尽管功能相同,但汽车发动机的设计却各不相同。

这就是面向对象编程(OOP)概念的简单之处。我希望你至少对OOP是什么以及它的特点有了基本的了解。

这基本上是对面向对象编程的概括性阐述。

如果你真的想让我从编程的角度解释面向对象编程的话。

欢迎留言。这是我的 Medium 文章
的修订版。

敬请期待更多文章。
联系我:mrshravankumarb@gmail.com

文章来源:https://dev.to/zhravan/object-oriented-programming-concepts-oops-simplified-c15