一、类和对象
类和对象是面向对象编程的两个核心概念
1、类
类是对一群具有相同特征或行为的事物的一个统称,是抽象的,不能直接使用。就像一个模板,是负责创建对象的。
特征 被称为 属性
行为 被称为 方法
2、对象
对象是由类创建出来的一个具体存在,可以直接使用
由哪一个类创建出来的对象,就拥有在哪一个类中定义的属性和方法
<先有类,再有对象>
3、类和对象的关系
类是模板,对象是根据类这个模板创建出来的。
类只有一个,而对象可以有很多个
不同的对象之间的属性可能会各不相同
类中定义了说明属性和方法,对象中就有什么属性和方法
<类名通常采用大驼峰命名法:如CapWords>
二、dir内置函数
使用内置函数dir( )传入标识符/数据,可以查看对象内的所有属性及方法
__方法名__ 是Python提供的内置方法/属性,常用的如下:
三、定义类
1、定义简单类
语法格式:
class 类名:
def 方法1(self,参数列表):
pass
def方法2(self,参数列表):
pass
对象变量 = 类名()
在类的封装内部,self 标识当前调用方法的对象自己
在方法内:
可以通过self,访问对象的属性,或调用其他的对象方法
2、初始化方法
当使用类名()创建对象时,会 自动 执行以下操作:
1、为对象在内存中分配空间 —— 创建对象
2、为对象的属性设置初始值—— 初始化方法 (init)
这个初始化方法就是 __init__,是对象的内置方法,专门用来定义一个类具有哪些属性的方法
使用类名()创建对象时,会自动调用初始化方法
在初始化方法中设置初始值:
1、把希望设置的属性值,定义成__init__方法的参数
2、在方法内使用如下代码接收外部传递的参数
self.属性 = 形参
3、在创建对象时,使用 类名(属性1、属性2) 调用
四、内置方法和属性
1、__del__方法
当使用类名()创建对象,为对象 分配完空间后 ,自动调用 __init__ 方法
当一个对象被从内存中销毁前,会 自动调用 __del__方法
应用场景:
__init__ 改造初始化方法,可以让创建对象更灵活
__del__ 如果希望对象在被销毁前再做一些事情,可以使用__del__方法
生命周期:
一个对象从调用类名()创建,生命周期开始
一个对象的__del__方法一旦被调用,生命周期结束
在对象的生命周期内,可以访问对象属性或调用方法
<del 关键字可以删除一个对象,或在整个结束后被自动删除>
2、__str__方法
在Python中,使用print输出对象变量,默认情况下会输出这个变量 引用的对象 是由哪一个类创建的对象,以及在内存中的地址(十六进制)
如果在开发中,希望使用print输出对象变量,能够打印自定义的内容,就可以利用__str__方法
<__str__方法必须返回一个字符串>