文档详情

面向对象编程基础.pdf

发布:2025-02-28约2.67万字共19页下载文档
文本预览下载声明

第六章面向对象编程基础

在前面的章节中,我们解决问题的思想是先把一个问题分解为几个步骤,然后逐一实现每个步骤,如果某个步

骤比较复杂,还需要把这个步骤分解成许多子步骤,直到问题得以解决为止。我们把这种自顶向下、逐步求精、分

而治之的编程过程叫做面向过程编程。面向过程编程关注每个过程的具体实现。随着计算机技术的发展,软件越来

越复杂,面向过程编程的方法已经难以设计出大型软件。20世纪60年代,人们提出了面向对象编程(ObjectOriented

Programming,即OOP)的思想,比面向过程编程具有更强的灵活性和扩展性,可以使软件设计更加灵活,并且能更

好地进行代码复用。本章我们介绍面向对象编程技术的基础知识。

6.1面向对象编程概述

面向对象编程的思想是这样的:把要解决的问题分解成很多对象,编程人员主要关注在什么条件下对象做什么

事情,而不关注对象做事情的具体过程。想象这样的场景:屏幕下方每隔1秒就会出现大小、颜色各异的多个气球,

每个气球缓缓上升,最后飘出屏幕。该怎样模拟这个场景呢?

面向对象编程的思想:把气球当成对象,气球的大小、颜色、运动由气球自己决定。设计一个循环,每隔1秒

执行1次,在每次循环中产生几个新气球即可。

面向过程编程的思想:首先设计好控制气球大小、颜色、运动的各个函数。设计一个循环,每隔1秒执行1次,

在每次循环中去调用这些函数。

面向对象编程的基础是对象,每个对象都有属于自己的数据(属性)和操作这些数据的函数(方法)。在设计

软件时,首先要仔细分析每个对象都有哪些属性以及哪些方法,构造出对象的“模板”,然后再根据这个“模板”

生成具体的对象。

学习面向对象编程,需要理解两个基本概念:类、对象,灵活运用三大特点:封装、继承、多态。

(1)类

类就是“模板”,是用来生成具体对象的“模型”。比如工厂生产玩具的模具就是类。类是对现实生活中一类具

有共同特征的事物的抽象,是一种自定义数据类型,每个类都包含相应的数据(属性)和操作数据的函数(方法)。

编写类是面向对象编程的前期主要工作。

(2)对象

对象是根据类创建的一个个实体,比如工厂根据模具生产出来的具体的玩具。

(3)封装

封装是面向对象编程的核心思想,是指将对象的属性和方法绑定到一起封装起来的过程。可以选择性地隐藏属

性和隐藏实现细节。这就是封装的思想。

(4)继承

继承是指类与类之间的关系,如果一个类(A)除了具有另一个类(B)的全部功能外,还有自己的特殊功能,

这时类A就可以继承于类B,从而减少代码的书写,提高代码复用性。

(5)多态

多态是指子类和父类具有相同的行为名称,但这种行为在子类和父类中表现的实际效果却不相同。比如父亲有

“跑”的行为,儿子也有“跑”的行为,但父亲跑得更快一些,儿子跑得慢一些。具体实现方法是在子类中重写父

类的方法。

6.2类的创建与使用

6.2.1类的创建

在Python中,定义类的基本语法如下:

classClassName():

class_suite#类体

ClassName:类的名字,Python建议类名采用“大驼峰式命名法”(即每个英语单词的首字母大写)。class_suite:

1

类体,主要是由属性、方法等语句组成。

例子,定义一个Dog类,代码如下

01classDog():

02defrun(self):

03print(Dogisrunning)

6.2.2创建类实例

上面定义了一个Dog类,但仅仅是一个“模具”,有了这个“模具”,我们就可以创建很多“狗”,根据“模具”

创建“狗”,称为创建类的实例(对象),语法如下:

objectClassName()

ClassName:类名,object:根据类创建的实例对象。比如根据前面的Dog类创建一个实例对象:

dogDog()#创建Dog类实例

dog.run()#调用dog的run方法

运行效果如图6.1.1。

显示全部
相似文档