从本章节开始,我们将详细阐释面向对象程序设计的基础知识点。
主要涵盖以下内容:
- 结构化程序设计的原理与实践
- 程序设计的三种基本结构:顺序、选择、循环
- 面向对象程序设计概述
何为结构化程序设计?
结构化程序设计的历史可追溯至E.W.Dijkstra在1965年提出的概念,他主张取消高级语言中的goto语句,以避免在程序中引发的一系列问题。Dijkstra还贡献了Dijkstra最短路径算法和银行家算法。
作为软件发展的一大里程碑,结构化程序设计主张自顶向下的设计方法、逐步求精及模块化。其基本步骤包括:
程序设计的三种基本结构是:
顺序结构按语句执行顺序执行,是最简单的程序设计方式。
选择结构则根据特定条件选择执行分支。它包括单选、双选及多选等形式。
循环结构则用于反复执行同一操作,直至某条件成立或不成立。它分为当型循环和直到型循环。
接下来,我们将探讨面向对象程序设计(OOP)。
面向对象程序设计是一种以对象为基本单元的编程范式与开发方法。对象是类的实例,它集程序与数据于一体,提高了软件的重用性、灵活性与扩展性。
面向对象程序设计的主要特点包括:
- 封装性
- 继承性
- 多态性。
面向对象程序设计中的核心概念包括:对象、类、数据抽象、数据封装、继承、多态性、动态绑定及消息传递等。
对象拥有状态、行为及标识属性。
类是具有相同结构与行为的对象集合,用于定义事物的抽象特性。例如,动物中的豹子类,包括其基础特征、行为等。
封装是将数据与操作结合,创造新的类型的过程,同时也是将接口与实现分离的过程。
继承是类与类之间的关系,一个类可以继承一个或多个其他类的结构与行为。它描述了“是一种”的关系。
组合是类与类之间的关系,一个对象包含其他对象与类。它描述了“有”的关系。
多态是类型系统中的一个概念,一个名称可表示多个不同类的对象,这些类共享一个超类。这个名称表示的对象可以以不同方式响应一些操作。
动态绑定,又称为动态类型,指的是一个对象或表达式的类型在运行时才确定。而静态类型则是在编译时确定。
消息传递是对象间交互的方式,一个对象调用另一个对象的方法或相关成员变量与方法。
理解并掌握面向对象的三大特性——数据封装、继承和多态是关键。后续我们将通过代码案例详细演示这些内容。先对概念进行理解,很多概念的解释参考了百科内容。