从面向编程到面向对象

时间:2021-01-28 19:51:25

面向编程:

我们在解决问题中,注重的是解决问题的每一个步骤和过程。

面向对象:

    面向对象基本概念:

对象:万物皆对象,对象是由静态的属性和动态的方法组成

类:一组具有相同属性和行为对象的抽象事物

消息:像某个对象发送请求。

方法:对象对收到请求的相应。

注重的是在问题中,涉及到哪些对象,以及对象之间有哪些关系.

 

核心思想

缺点

算法

面向编程

自顶向下,逐步求精,也就把功能分解

 

设计数据结构

 

编写基础代码,基于数据结构操作

一旦数据结构发生修改,必须就要修改操作的代码

 

可重用性差

 

可维护性差,维护的成本高

程序 = 数据结构+算法

 

 

相对的优点

 

面向对象

分解数据

 

数据,和操作数据是一整体

数据修改,只涉及这对该数据的操作(封装)

 

可重用性好(继承)

 

可维护性高,维护的成本低

程序 = 对象+消息

万事万物皆对象,对象是由静态的属性和动态的方法来组成的。


面向对象的三大基本特征:

    

封装:

存在一个边界,边界之内的细节隐藏起来,只留下对外的接口(如,笔记本,手机,饮水机)

为什么使用封装(1)易用,简单。(2)安全 (3)易维护

继承:

允许后代直接使用先辈的所有属性和行为。

为什么使用继承:更好的实现了代码的重用

多态:

不同的对象,接收到相同的消息,产生的响应不同。

总结:

面向对象是一种很自然,朴素的方法,来源于生活,