python的继承和重载


0x00 继承

继承的特点:
<1>减少代码量和灵活指定型类
<2>子类具有父类的方法和属性
<3>子类不能继承父类的私有方法或属性
<4>子类可以添加新的方法
<5>子类可以修改父类的方法

继承语法:
<1>单继承:
class(父类名)
<2>多继承
class(父类1,父类2,父类n...)

0x01 重载

重载语法:
直接定义与父类同名的方法

修改父类方法:
<1>在重载的方法中调用父类方法,同时添加相应的逻辑代码
<2>多重继承中子类优先调用最先继承的父类

0x02 程序例子

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age
    def say(self):
        print("hi, Person!")

class Student(Person):
    def eat(self):
        print("eat")

class Human:
    def say(self):
        print('hi human')

class Teacher(Person, Human):
    def say(self):
        print("hello!")
        super().say()
        print("done!")

if __name__ == '__main__':
    t = Teacher()
    t.say()


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM