Logo
Section 1 / 3

简要介绍

本课程欢迎你进入面向对象编程的世界。

导入

简要介绍

本课程欢迎你进入面向对象编程的世界。

过程式编程

假设你已经熟悉了编程的基础知识,并且在程序中使用过方法,也称为函数。

过程式编程是一种编程范式。
在过程式编程中,程序被划分为称为方法的较小部分。

过程式编程中的基本实体是方法。

过程式编程技术的核心是使用方法实现代码重用。这意味着一旦在程序中实现了一个方法,就可以多次调用它来执行特定操作,而无需重复编写这些操作的代码。然而,使用这种范式来实现复杂的现实世界场景可能会非常困难。

什么是面向对象编程?

编程用于解决现实世界的问题,如果无法使用编程语言来建模现实世界的情景,那将毫无意义,对吧?这正是面向对象编程发挥作用的地方!

面向对象编程,也称为 OOP,是一种依赖于类和对象概念的编程范式。

在现实世界中,当我们环顾四周时,会发现到处都是对象。这些对象相互交互,这就是现实世界的工作方式。此外,我们发现许多对象是相似的,因此将它们视为同一类的实例。例如,Dog 是一个类,而你的宠物狗则是该类的一个实例。你的宠物狗与其他所有狗具有某些共同点。这就是为什么我们将它们视为同一类的实例。将计算机程序构造成一组对象(而不是方法)集合,是面向对象编程的基础。
在编程中模拟这种现实世界情景,探索了面向对象编程的基本概念。

面向对象编程的基本思想是将一个复杂程序划分为多个对象,它们彼此通信。

程序/应用程序中的对象通常代表现实世界中的对象。

假设你即将设计一个在线学习平台。一个非常基础的模型将包括以下对象:

  • 课程(Courses)
  • 学习者(Learners)
  • 学习资源

在软件应用中,有许多对象服务于应用逻辑,但没有直接对应的现实世界对象。这些对象最常见的任务包括管理身份验证、模板处理、请求处理,或任何其他为运行中的应用所需的各种功能。

对象与类的结构

对象可以包含以 字段(变量)形式存在的数据,以及用于操作这些数据的 方法。想想你周围的现实世界对象。这些对象有哪些特征?以一台 计算器 为例。它有一个 状态,即处于 开启 或 关闭 状态。它还有 行为,即你可以对数字执行加法、减法、乘法、除法等许多操作。这意味着我们可以这样说:

对象具有 状态 和 行为。

有趣,不是吗?但问题是:“对象从哪里来?”

好吧,上述问题的答案是 类。

一个 类 可以看作是创建对象的 蓝图。

下图展示了 Calculator 类应有的样子。

如果你要在计算机程序中实现一个计算器对象,变量可以表示它的状态,而函数可以表示其行为。

正如现实世界对象的状态和行为无法分离一样,面向对象编程中的类将行为和状态封装在一个单一单元中。

可以创建同一类的多个对象。每个对象可以处于独立的状态,但它们都共享相同的行为和特性。

C# 为我们提供了多种原始数据类型来存储不同类型的数据。这些原始类型变量只能存储值。更具体地说,从面向对象的角度来看,这些变量只关注建模对象的状态。

基于面向对象的语言使程序员能够使用类创建强大的自定义变量。与原始数据类型不同,这些用户定义的数据类型,也称为类,不仅可以建模对象的状态,还可以建模其行为。因此,当创建这种用户定义数据类型的变量时,它能做的事情远不止存储单个值。

从上述讨论可以推断出,类是使用原始数据类型(如 bool、int、char 等)实现的用户定义数据类型。

我们暂时先到这里,稍后会在后续章节中回到这个话题。


在下一课中,你将了解现代面向对象语言以及 C# 为何是其中之一。

现代面向对象语言