python如何继承

python如何继承

作者:William Gu发布时间:2026-01-05阅读时长:0 分钟阅读次数:17

用户关注问题

Q
如何在Python中创建子类继承父类?

我想让一个类继承另一个类的属性和方法,Python中是如何实现类的继承的?

A

使用class定义语法实现类的继承

在Python中,可以通过在子类定义时在括号中写上父类名来实现继承。例如:

class Parent:
    def greet(self):
        print('Hello from Parent')

class Child(Parent):
    pass

c = Child()
c.greet()  # 输出: Hello from Parent

这样,Child类就继承了Parent类的方法和属性。

Q
如何重写父类的方法以实现多态?

继承父类后,我想让子类拥有不同的行为,Python中怎样重写父类的方法?

A

在子类中定义与父类同名的方法进行方法重写

子类可以通过定义与父类同名的方法来覆盖父类的方法,这样调用该方法时会执行子类中的版本。例如:

class Parent:
    def greet(self):
        print('Hello from Parent')

class Child(Parent):
    def greet(self):
        print('Hello from Child')

c = Child()
c.greet()  # 输出: Hello from Child

这能实现不同类中相同方法名的不同表现,体现多态特性。

Q
如何调用父类被重写的方法?

在子类中重写了父类的方法,若仍想调用父类的该方法,应该怎么做?

A

使用super()函数调用父类的方法

可以使用super()函数来调用父类的被重写的方法,比如:

class Parent:
    def greet(self):
        print('Hello from Parent')

class Child(Parent):
    def greet(self):
        super().greet()
        print('Hello from Child')

c = Child()
c.greet()

输出结果为:
Hello from Parent
Hello from Child
这样子类方法中既能调用父类功能,也可扩展新的行为。