01 初识对象
- 类比关于类、对象、对象赋值的关系:
02 成员方法
基本语法:
class 类名称: 类的属性 类的行为
- class是关键字,表示要定义类了
- 类的属性,即定义在类中的变量(成员变量)
- 类的行为,即定义在类中的函数(成员方法)
成员方法的定义语法:
def 方法名(self,形参1,.....,形参N): 方法体
- self关键字self关键字是成员方法定义的时候,必须填写的
它用来表示类对象自身的意思
当我们使用类对象调用方法的是,self会自动被python传入
在方法内部,想要访问类的成员变量,必须使用self
总结:
03 构造方法
- init()方法,称为构造方法可以实现:【init前后都有两个下划线】
- 在创建类对象(构造类)的时候,会自动执行
- 在创建类对象(构造类)的时候,将传入参数自动传递给 init 方法使用。
总结:
04 魔术方法
- __str__字符串方法【控制将类转为字符串的行为】:
__lt__小于符号比较方法:
*
__le__小于等于比较符号【lt只能比较小于和大于,不能比较小于等于和大于等于】:
*
__eq__比较运算实现方法:
*
总结:
05 封装
- 私有成员(变量、方法):
- 私有成员变量: 变量名为__开头(2个下划线)
- 私有成员方法: 方法名为__开头(2个下划线)
- 私有的变量和方法只能在类的内部进行调用,在外部即类对象处无法直接使用
总结:
06 继承
基础语法【单继承】:
pythonclass 类名(父类名): 类内容体
基础语法【多继承】:
pythonclass 类名(父类1,父类2,.....,父类N): 类内容体
注意:多个父类中,如果有同名的成员 ,那么默认以继承顺序(从左到右)为优先级。即:先继承的保留,后继承的被覆盖
总结:
07 复写父类成员和调用父类成员
- 复写: 子类继承类的成员属性和成员方法后,如果对其"不满意",那么可以进行复写。即:在子类中重新定义同名的属性或方法
pythonclass Phone: IMEI=None #序列号 producer = "ITCAST" #厂商 def ca11_by_5g(self) print(父类的5g通话") class MyPhone(Phone): proucer ="ITHEIMA" #复写父类属性 def call_by_5g(self): #复写父类方法 print(子类的5g通话")
- 调用父类同名成员: 一旦复写父类成员,那么类对象调用成员的时候,就会调用复写后的新成员如果需要使用被复写的父类的成员,需要特殊的调用方式
- 方式1:直接调用父类成员
- 使用成员变量:父类名
- 使用成员方法:父类名.成员方法(self)
- 方式2:使用super()调用父类成员
- 使用成员变量:supe().成员变量
- 使用成员方法:super.成员方法()
总结:
08 变量的类型注解
- 对变量设置类型注解:
python基础语法:变量:类型
- 除了使用变量:类型,这种语法做注解外,也可以在注释中进行类型注解。
注意:
*
总结:
09 对函数和方法、Union联合类型注解
- 对形参进行类型注解:
- 对返回值进行类型注解:
- Union联合类型注解【注意先导包】: