
Python中的继承允许新类(子类)继承现有类(父类)的属性和方法,实现代码重用和扩展。子类可以修改或扩展父类的行为,支持多态,使得同一个方法可以有不同实现,增强了代码的灵活性和可维护性。
class Car():"""汽车"""def __init__(self, energy, distance):self.energy = energyself.distance = distanceself.windows = "close"def go(self): # 加油门self.energy = self.energy - 1self.distance = self.distance + 1returndef add(self): # 加油self.energy = self.energy + 1def open_windows(self): # 车窗self.windows = "open"class ElectricCar(Car): # 必须在括号内指定父类的名称"""电动汽车"""def __init__(self, energy, distance, battery_size): # 接受创建Car实例所需的信息"""初始化父类的属性"""super().__init__(energy, distance) # 帮助Python将父类和子类关联起来self.battery_size = battery_size # 给子类定义新属性def go(self): # 加电门self.battery_size = self.battery_size - 1self.distance = self.distance + 1returndef add(self): # 充电self.battery_size = self.battery_size + 1
open_windows()不变
go()、add() 被重新写
要让派生类调用基类的__init__()方法进行必要的初始化,需要在派生类使用super函数调用基类的__init__()方法
不需要重新写方法,可以直接调用方法
super().add(x)