面向对象编程思想

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

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

面向对象:对函数进行分类和封装,让开发“更快更好更强...”

1. 什么是面向对象?

a) 面向对象是一种编程思想,就是一种解决问题的思路,将项目中不同的数据,封装成类型来进行使用。是对面向过程编程思想的补充和完善。

b) 面向对象,有自己的三大特征,抽象、封装、继承、多态

1.1封装:

顾名思义就是将内容封装到某个地方,以后再去调用被封装在某处的内容。

--->将内容封装到某处

--->从某处调用被封装的内容

调用被封装的内容时,有两种情况:

1.通过对象直接调用

2.通过self间接调用

1.2继承:

面向对象中的继承和现实生活中的继承相同,即:子可以继承父的内容。

动物:吃、喝、拉、撒

猫:喵喵叫(猫继承动物的功能)

狗:汪汪叫(狗继承动物的功能)


面向对象编程思想_第1张图片

Python的类可以继承多个类

a、Python的类可以继承多个类,Java和C#中则只能继承一个类

b、Python的类如果继承了多个类,那么其寻找方法的方式有两种,分别是:深度优先和广度优先


面向对象编程思想_第2张图片

当类是经典类时,多继承情况下,会按照深度优先方式查找

当类是新式类时,多继承情况下,会按照广度优先方式查找

经典类和新式类,从字面上可以看出一个老一个新,新的必然包含了跟多的功能,也是之后推荐的写法,从写法上区分的话,如果 当前类或者父类继承了object类,那么该类便是新式类,否则便是经典类。

面向对象编程思想_第3张图片

1.3多态:

调用同一基类接口,在运行时根据对象来执行相应对象类型中所定义的方法的行为就是多态 。

2.类是什么?

类,就是类型、数据类型的简称,是从一部分实际存在具有相似的特征和行为的实物中,抽象出来的一个概念。

3. 对象是什么?

对象,就是实际存在的物体,也称为实体,是类型表示的具体的实际存在一个实例

4. 类和对象有什么区别

a) 类是对象 的抽象概念

b) 对象是类 的实例

5. 怎么定义一个类

a) 类一般有几个组成部分:类型名称、属性、方法

b) 通过class关键字,来定义一个自定义类型

c) 通过__init__()函数,来初始化类的属性数据

d) 通过普通函数,定义类的行为方法

6. 怎么创建对象?

a) 和执行函数一样,直接通过类的名称,来创建对象,如:u = Users()

7. 创建的对象,怎么使用对象的属性?

a) 对象的属性,可以直接通过 对象的引用变量.属性名称 来使用,如u.username

8.创建的对像,怎么使用对象的属性?

a) 对象的属性,可以直接通过 对象的引用变量.属性名称 来使用,如u.username

9. 创建的对象,怎么使用对象的方法?

a) 对象的方法,可以直接通过 对象的引用变量.方法名称() 来调用方法

10. 创建对象的过程是什么?

a) 首先,创建对象,会调用对象的__new__()函数,来申请内存,创建对象

b) 其次,给创建好的独享,初始化对象的数据,自动调用__init__()函数,给对象的属性赋值

11.应用场景

1. 多函数需使用共同的值

如:数据库的增、删、改、查操作都需要连接数据库字符串、主机名、用户名和密码。

2. 需要创建多个事物,每个事物属性个数相同,但是值的需求

如:张三、李四、杨五,他们都有姓名、年龄、血型,但其都是不相同。即:属性个数相同,但值不相同。

12.类和对象在内存中是如何保存?


面向对象编程思想_第4张图片

你可能感兴趣的:(面向对象编程思想)