python 类的继承

python 类的继承

一、单继承

# 例如
class Chinese:
    """这是一个中国人类"""
    eyes = "black"
    color = "yellow"
    hair = "black"

    def say(self):
        print("会说普通话")

    def use(self):
        print("吃饭用筷子")


class HuNang(Chinese):  # Chinese为父类。HuNang类继承Chinese类
    # 继承后拥有父类所有方法和属性
    """这是一个湖南人类"""
    def eat(self):
        print("喜欢吃辣!")

    def use(self):
        print("使用中文")
        super().use()  # 类的内部调用父类方法
        # 继承或多继承,可用super()方法更加便捷的调用父类方法


ll = HuNang()  # 实例化对象
ll.eat()  # 调用自身方法
ll.say()  # 调用父类方法
print(ll.eyes)  # 调用父类属性
print(ll.color)
ll.use()

运行结果
在这里插入图片描述

二、多继承

# 例如
class A:
    def p(self):
        print("我是A类")


class B:
    def p(self):
        print("我是B类")


class C(A):
    def p(self):
        print("我是C类")


class D(B):
    def p(self):
        print("我是D类")


class E(C, D):
    def p(self):
        print("我是E类")


gg = E()  # 此时类中的self始终指向的是gg,所有方法选择的优先级始终从E开始判断的
# E无--->C,C无--->A,A无--->D,D无--->B
gg.p()   # 我是E类

多继承流程图1
在这里插入图片描述
多继承流程图2(有个类F同时继承了A和B)

在这里插入图片描述

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值