python的面向对象编程

面向对象

三大特征:封装 继承 多态

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

面向对象:将数据与函数绑定到一起,进行封装,这样能够更快的开发程序,减少了重复代码的重写功能

定义:按人们认识客观世界的系统思维方式,采用基于对象的概念建立模型,模拟客观世界分析,设计实现软件的办法。面向对象编程是一种解决软件复用的设计和编程方法。

类和对象

定义:

类是抽象的,在使用的时候通常会找到这个类的一个具体的存在,使用这个具体的存在。一个类可以找到多个对象。

对象时某一个具体事物的存在,在现实世界中可以时看得见摸得着的,可以是直接使用的。

类的构成

1.类的名称:类名

2.类的属性:一组数据

3.类的方法:允许对进行操作的方法 (行为)

定义类

class 类名()

创建对象

对象名 = 类名()

对象是有属性和方法组成的,在实际环境中也就是对象本身的变量和函数

init方法


python的面向对象编程_第1张图片

魔法方法

打印ID:print('内存地址,id(对象)')

定义一个str()方法:当使用print输出对象时,只要自己定义看str(self)的方法,那么就会打印从这个方法中return的数据


python的面向对象编程_第2张图片

self

烤地瓜


python的面向对象编程_第3张图片

运行之后:


python的面向对象编程_第4张图片

保护对象的属性

如果有一个对象,当需要对其进行修改属性时,有2种方法

1.对象名.属性名 = 数据 ---->直接修改

2.对象名.方法名() ---->间接修改

Python中没有像C++中public和private这些关键字来区别公有属性和私有属性。

del()方法

创建对象后,python解释器默认调用init()方法;

当删除一个对象时,python解释器也会默认调用一个方法,这个方法为del()方法

单继承

1.虽然子类没有定义init方法,但是父类有,所以在子类继承父类的时候这个方法就被继承了,所以只要创建Bosi的对象,就默认执行了那个继承过来的init方法

2.子类在继承的时候,在定义类时,小括号()中为父类的名字

3.父类的属性、方法,会被继承给子类

多继承

1.所谓多继承,即子类有多个父类,并且具有它们的特征

2.python中是可以多继承的

3.父类中的方法、属性,子类会继承

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