全站搜索未启用
跳到主要内容

7.1.1面向过程和面向对象
1.面向过程的程序设计

“面向过程”是一种以事件为中心的编程思想,是一种自顶向下的编程。当解决一个问题的时候,面向过程会把事情拆分成一个个函数和数据(用于方法的参数)。然后按照一定的顺序,执行完这些方法(每个方法看作一个过程),等方法执行完毕,问题也就相应解决了。

面向过程的程序设计的优点在于,它能够有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。而它的缺点也比较突出:

(1)数据与处理数据的方法(函数)相分离。

(2)管理的数据类型无法满足需要。

(3)重用性差,只能以函数的方式实现代码重用,效率相对较低,是手工作坊式的编程模式。

2.面向对象的程序设计

面向对象的程序设计也是一种计算机编程架构。作为一种新方法,其本质是在建立模型过程中体现出来的抽象思维过程和面向对象的方法。不同于面向过程的程序设计,面向对象的程序设计的焦点不再是程序的逻辑流程,而是程序中的对象以及对象之间的关系。

3.两者的区别

(1)面向过程程序设计的程序员的思考方式:

首先,定义变量保存用户输入的数据。然后,依次实现一个加法函数,完成数据的加法;实现一个减法函数,完成数据的减法;实现一个乘法函数,完成数据的乘法……

(2)面向对象程序设计的程序员的思考方式:

首先,计算器是一个对象;然后,这个对象应该有保存数据的变量;随后,这个对象应该有完成数据计算的方法(函数)……

4.面向对象的程序设计的特点

(1)封装。

(2)继承。

(3)多态。

5. 面向对象的程序设计的优点

(1)数据抽象的概念可以在保持外部接口不变的情况下改变内部实现,从而减少甚至避免对外界的干扰。

(2)面向对象的程序设计通过继承大幅减少冗余的代码,并可以方便地扩展现有代码,提高编码效率,降低出错概率,并降低软件维护的难度。

(3)结合面向对象分析、面向对象设计,允许将问题域中的对象直接映射到程序中,减少软件开发过程中中间环节的转换过程。通过对对象的辨别、划分,可以将软件系统分割为若干相对为独立的部分,在一定程度上更便于控制软件复杂度。

(4)以对象为中心的设计可以帮助开发人员从静态(属性)和动态(方法)两个方面把握问题,从而更好地实现系统。

(5)通过对象的聚合、联合可以在保证封装与抽象的原则下实现对象在内在结构以及外在功能上的扩充,从而实现对象由低到高的升级。

6.面向对象的程序设计的缺点

(1)运行效率较低。

(2)类库庞大。

(3)类库可靠性无法保证

7.1.2类与实例
1.类

(1)类的概念。类(Class)是对一群具有相同特征或行为的事物的一个统称,是抽象的,不能直接使用,它是用来描述具有相同的属性和方法的对象的集合,同时,类也是一种数据结构。

(2)类的属性。创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性。

(3)类的方法。类中的行为被称为方法,方法又包含实例方法、类方法和静态方法。

2.实例

当一个类定义完成之后,我们要使用这个类来创建对象(实例)。

对象是由类创建出来的一个具体的存在,可以直接使用,类的一个个体就是对象,对象是具体的,实实在在的事物。

最后修改: 2020年02月4日 Tuesday 16:41