学习Python的笔记--面向对象-继承

1、概念

多个类之间的所属关系,即子类默认继承父类的所有属性和方法。

注:所有类默认继承object类,object类是顶级类或基类;

其他子类叫做派生类。

python 复制代码
#父类A
class A(object):
    def __init__(self):
        self.num=1
    def info_print(self):
        print(self.num)
#子类B
class B(A):
    pass
result=B()
result.info_print()
#1

2、单继承

徒弟要学习师傅的古法煎饼果子配方

师父要把这套技术传授给他的唯一的最得意的徒弟。

python 复制代码
#1.师父类
class Master(object):
    def __init__(self):
        self.kongfu='[古法煎饼果子配方]'
    def make_cake(self):
        print(f'运用{self.kongfu}制作煎饼果子')
#2.徒弟类
class Prentice(Master):
    pass
#3.创建对象daqiu
daqiu=Prentice()

#4.对象访问实例属性
print(daqiu.kongfu)

#5.对象调用实例方法
daqiu.make_cake()

3、多继承

一个类同时继承了多个父类。

注意:当一个类有多个父类的时候,默认使用第一个父类的同名属性和方法。

python 复制代码
#创建师傅类
class Master(object):
    def __init__(self):
        self.kongfu='[古法煎饼果子配方]'
    def make_cake(self):
        print(f'运用{self.kongfu}制作煎饼果子')

#创建学校类
class School(object):
    def __init__(self):
        self.kongfu='[码途钥匙煎饼果子配方]'
    def make_cake(self):
        print(f'运用{self.kongfu}制作煎饼果子')

#创建徒弟类
class Prentice(School,Master):
    pass

daqiu=Prentice()#创建对象daqiu
print(daqiu.kongfu)#对象调用实例对象  [码图钥匙煎饼果子配方]
daqiu.make_cake()#对象实例方法  运用码图钥匙煎饼果子配方制作煎饼果子

4、子类重写父类同名方法和属性

daqiu掌握了师父和培训的技术后,自己潜心钻研出自己的独门配方的一套全新的煎饼果子技术。

注:子类调用父类的同名方法和属性

5、子类调用父类的同名方法和属性

6、多层继承

即徒弟再传给徒孙

7. super()调用父类方法

8、私有权限

1、定义私有属性和方法

可以为实例属性和方法设置私有权限,即设置某个实例属性或实例方法不继承给子类。

设置私有权限的方法:在属性名和方法名前面加上两个下划线__。

注意:私有属性和私有方法只能在类里面访问和修改。

2、获取和修改私有属性值

在Python中,一般定义函数名get_xx 用来获取私有属性,定义set_xx用来修改私有属性值。

相关推荐
129Lab2 小时前
BMS算法快速原型开发:AI辅助实现扩展卡尔曼滤波(EKF)SOC估算从理论到代码落地
python·嵌入式开发·bms·卡尔曼滤波·电池管理系统·soc估算
萧鼎2 小时前
safetensors 库的安装、核心语法与实战用法,安全保存模型权重
python·开源·教程·python库·safetensors
千里码aicood2 小时前
基于Python语言的测量程序设计
开发语言·python
2601_962300813 小时前
用PyTorch Lightning简化空间分析:Python和机器学习的力量
python·深度学习·机器学习·空间分析·pytorchlightning
边境悍匪3 小时前
蜗牛学苑 Java 智能体学习 Day40|Vue 工程化与 ElementPlus 思维导图复盘
java·vue.js·学习
jayson.h3 小时前
python-可视化提取表格-通用
开发语言·python
LuminousCPP4 小时前
数据结构-排序(三):快速排序进阶|挖坑法、双指针交换与手动栈非递归实现
c语言·数据结构·笔记·算法·排序算法
chushiyunen4 小时前
mockito笔记
java·开发语言·笔记
悟天特斯4 小时前
AI驱动的楼宇节能:从粗放管控到精准降碳的实践路径
开发语言·人工智能·python·物联网
传奇开心果编程4 小时前
【xilem0.4基础语法学与练】第22课:on_click / on_change 与手势系统的实战
学习·rust·前端框架