乐趣区

python面向对象18方法的重写

类成员方法的继承和重写
1. 成员继承:子类继承父类除构造方法之外的所有方成员。
2. 方法重写:子类可以重新定义父类的方法,这样就会覆盖父类的方法,也称为 重写

示例代码:

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

    def say_age(self):
        print(self.age, "的年纪是:", self.age, sep='')

    def say_name(self):
        print("我的名字是:", self.name, sep='')

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

    def say_name(self):
        print("报告老师, 我的名字是:", self.name, sep='')

s = Student("聂发俊", 18, 100)
s.say_age()
s.say_name()

运行结果:

18 的年纪是:18
报告老师, 我的名字是: 聂发俊

程序说明:

  1. 首先定义类 Person,包含两个公开属性和公开方法,其中比较主要的是say_name 方法。然后用定义类Student, 首先继承于类Person, 也包含方法say_name, 因为方法相同,这种属于子类方法对父类重写,以子类方法为准。
  2. 实例化对象 s,分别执行s.say_age()s.say_name()方法,由于 say_name 方法属于重写,则显示内容:报告老师, 我的名字是: 聂发俊

备注:
更多精彩博客,请访问: 聂发俊的技术博客
对应视频教程,请访问:python400
完整 markdown 笔记,请访问: python400_learn_github

退出移动版