Python全栈工程师

27.1-面向对象OOP概述

2019-11-29  本文已影响0人  BeautifulSoulpy

想做的事,只要有能力做,那就不要等,不要害怕失败;想付出的爱,只要觉得可以,那就大胆些,不要留下遗憾。生活要靠自己经营的;工作要靠自己努力的;伴侣是要用心呵护的;家庭是要彼此珍惜的。早安!

总结:

  1. 面向对象三要素:封装、继承、多态性;
  2. Python 里面多态性的理解:
  3. 继承就是为了复用,

1. 概述

面向X = 对谁
面向对象代表语言: C语言;

面向过程:根据业务逻辑从上到下写垒代码

函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可

面向对象:对函数进行分类和封装,让开发“更快更好更强…”,一种认识世界、分析世界的方法论;

面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处。

今天我们来学习一种新的编程方式:面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)。

2. 面向对象中的 类和对象

面向对象编程是一种编程方式,此编程方式的落地需要使用 “类” 和 “对象” 来实现,所以,面向对象编程其实就是对 “类” 和 “对象” 的使用。

类(Class):类是抽象的概念,是万事万物的抽象是一类事物的共同特征的集合;
用来描述具有相同属性和方法的对象的集合。它定义了该集合中每个对象所共有的属性和方法。其中的对象被称作类的实例。
对象object、instance:对象是类的具象,是一个实体;对我们每个人这个个体,都是抽象人类的不同的实体;


小明是个具体的人,他的属性值和行为值各有三个,我们可以根据小明这个具体的人抽象出优质青年这个类,它是一个抽象化的概念,并不是指一个具体的人。

我们根据这个抽象出来的类,就可以生产具体的对象。

上面的小华、张三、李四就是一个个具体的对象。上面的整个流程如下图所示:

由一个具体的对象抽象成一个类再实例化成一个具体的对象。

3. 面向对象三大特性

面向对象的三大特性是指:封装、继承和多态。

1.封装
组装:将数据和操作组装到一起。
隐藏数据:对外只暴露一些接口,通过接口访问对象,比如驾驶员使用汽车,不需要了解汽车的构造细节
节,只需要知道使用什么部件怎么驾驶就行,踩了油门就能跑,可以了解后面的激动原理;

2. 继承
多复用,继承来的就不用了自己写了;
多继承少修改,OCP,使用继承来改变,来体现个性

子可以继承父的内容
例如:
猫可以:喵喵叫、吃、喝、拉、撒
狗可以:汪汪叫、吃、喝、拉、撒

如果我们要分别为猫和狗创建一个类,那么就需要为 猫 和 狗 实现他们所有的功

3. 多态
面向对象编程最灵活的地方,动态绑定;

人类就是封装;
人类继承自动物类,孩子继承父母特征。分为单一继承、多继承;
多态,继承自动物类的人类、猫类的操作”吃“不同

上一篇下一篇

猜你喜欢

热点阅读