Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构

Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构


文章目录

  • Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构
  • 前言
  • 一、类成员的继承和重写
  • 二、查看类的继承层次结构
  • 总结

前生篇:面向对象三大特征介绍_继承


前言

Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构_第1张图片


一、类成员的继承和重写

  • 成员继承:子类继承了父类除构造方法之外的所有成员。
  • 方法重写:子类可以重新定义父类中的方法,这样就会覆盖父类的方法,也称为“重写”
  • 继承和重写的案例:

代码演示:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_age(self):
        print(self.name, '的年龄是:', self.age)

    def say_name(self):
        print('我是', self.name)


class Student(Person):
    def __init__(self, name, age, score):
        self.score = score
        Person.__init__(self, name, age)  # 构造函数中包含调用父类构造函数

    def say_score(self):
        print(self.name, '的分数是:', self.score)

    def say_name(self):  # 重写父类的方法
        print('报告博主,我是:', self.name)


s1 = Student('Offer', 18, 60)
s1.say_score()
s1.say_name()
s1.say_age()
----------------------------
Offer 的分数是: 60
报告博主,我是: Offer
Offer 的年龄是: 18

Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构_第2张图片

二、查看类的继承层次结构

  • 通过类的方法 mro()或者类的属性__mro__可以输出这个类的继承层次结构。
  • 查看类的继承层次结构:

代码演示:

class A:
    pass


class B(A):
    pass


class C(B):
    pass


print(C.mro())
----------------------
[<class '__main__.C'>, <class '__main__.B'>, <class '__main__.A'>, <class 'object'>]

Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构_第3张图片


总结

以上帮各位总结好了,收藏,关注即可查收。

前生篇:面向对象三大特征介绍_继承


关注下方公众号,免费拿Python学习资料!!!

Python入门基础篇 No.78 —— 类成员的继承和重写_查看类的继承层次结构_第4张图片

你可能感兴趣的