广告推广网站,江门网站,万州建设工程信息网站,个人网站多少钱循此苦旅#xff0c;以达天际 —— 24.4.3 一、继承的基础语法 学习目标#xff1a; ① 理解继承的概念 ② 掌握继承的使用方式 ③ 掌握pass关键字的作用 单继承 语法#xff1a; class 类名(父类名): 类内容体 继承分为#xff1a;单继承和多继承 继承表示#xff1a;将从… 循此苦旅以达天际 —— 24.4.3 一、继承的基础语法 学习目标 ① 理解继承的概念 ② 掌握继承的使用方式 ③ 掌握pass关键字的作用 单继承 语法 class 类名(父类名): 类内容体 继承分为单继承和多继承 继承表示将从父类那里继承复制来成员变量和成员方法不含私有 案例
演示面向对象继承的基础语法
# 演示单继承
class Better:Imei AllBetterdef sayhello(self):print(一切都会好的)class Future(Better):id insistdef Tomorrow(self):print(我一直相信)Lcl Future()
print(Lcl.Imei)
print(Lcl.id)
Lcl.sayhello()
Lcl.Tomorrow() 多继承 python中的类之间也支持多继承即一个类可以继承多个父类 语法 class 类名(父类1父类2……父类N) 类内容体 案例
演示多继承class Phone:IMEI None # 序列号producer HM # 厂商def call_by_4g(self):print(4G通话)class NFCReader:nfc_type 第五代producer HMdef read_card(self):print(NFC读卡)def whrite_card(self):print(NFC写卡)class RemoteControl:rc_type 红外遥控def control(self):print(红外遥控开启了)class MyPhone(Phone,NFCReader,RemoteControl):pass # 补全让我们的代码显示为空phone MyPhone()
print(phone.producer)
phone.call_by_4g()
phone.read_card()
phone.whrite_card()
phone.control() 多继承注意事项 多个父类中如果有同名的成员那么默认以继承顺序从左到右为优先级 即先继承的保留后继承的被覆盖 总结 1.什么是继承 继承就是一个类继承另外一个类的成员变量和成员方法 语法 class 类父类1父类2……父类N 类内容体 子类构建的类对象可以 ①有自己的成员变量和成员方法 ②使用父类的成员变量和成员方法 2.单继承和多继承 单继承一个类继承另一个类 多继承一个类继承多个类按照顺序从左向右依次继承 多继承中如果父类有同名方法或属性先继承的优先级高于后继承的 3.pass关键字的作用是什么 pass是占位语句用来保证函数方法或类定义的完整性表示无内容空的意思 二、复写和使用父类成员 学习目标 1.掌握复写父类成员的语法 2.掌握如何在子类中调用父类成员 复写 子类继承父类的成员属性和成员方法后如果对其不满意那么可以进行复写 即在子类中重新定义同名的属性或方法即可 案例
复写class Phone:IMEI Noneproducer ITCASTdef call_by_5g(self):print(父类的5g通话)class MyPhone(Phone):producer ITheimadef call_by_5g(self):print(子类的5g通话)print(开启CPU单核模式以便于省电)myPhone MyPhone()
myPhone.call_by_5g()
print(myPhone.IMEI)
print(myPhone.producer) 调用父类同名成员 一旦复写父类成员那么类对象调用成员的时候就会调用复写后的新成员 如果需要使用被复写的父类的成员需要特殊的调用方式 方式1 调用父类成员 使用成员变量父类名.成员变量 使用成员方法父类名.成员方法(self) 方式2 使用super()调用父类成员 使用成员变量super().成员变量 使用成员方法super().成员方法()
复写class Phone:IMEI Noneproducer ITCASTdef call_by_5g(self):print(父类的5g通话)class MyPhone(Phone):producer ITheima # 复写父类的成员属性def call_by_5g(self):print(子类的5g通话)print(开启CPU单核模式以便于省电)如果需要使用被复写的父类的成员需要特殊的调用方式方式1用父类成员使用成员变量父类名.成员变量使用成员方法父类名.成员方法(self)方式2使用super()调用父类成员使用成员变量super().成员变量使用成员方法super().成员方法()print(f父类的厂商是{super().producer})super().call_by_5g()myPhone MyPhone()
myPhone.call_by_5g()
print(myPhone.IMEI)
print(myPhone.producer)总结 1.复写表示 对父类的成员属性或成员方法进行重新定义 2.复写的语法 在子类中重新实现同名成员方法或成员属性即可 3.在子类中如何调用父类成员 方式1 调用父类成员 使用成员变量父类名.成员变量 使用成员方法父类名.成员方法(self) 方式2 使用super()调用父类成员 使用成员变量super().成员变量 使用成员方法super().成员方法() 注意只可以在子类内部调用父类的同名成员子类的实体类对象调用默认是调用子类复写的