Python的基本继承
这个问题在这里已经有了答案:
你可以调用Car init方法并传递它的参数
class ElectricCar(Car):
def __init__(self, model, color, mpg, battery_type):
Car.__init__(self,model,color,mpg)
self.battery_type = battery_type
或者您也可以使用评论中提到的优先方法的super
方法。
class ElectricCar(Car):
def __init__(self, model, color, mpg, battery_type):
super(ElectricCar,self).__init__(model, color, mpg)
self.battery_type = battery_type
那里的遗产在哪里?
继承关系在于你可以用这些类来做什么:
>>> car = Car('Ford Prefect', 'white', 42)
>>> print(car.display_car())
This is a white Ford Prefect with 42 MPG.
>>> electric_car = ElectricCar('Tesla Model S', 'silver', None, 'lead-acid')
>>> print(electric_car.display_car())
This is a silver Tesla Model S with None MPG.
请注意,您不必编写ElectricCar.display_car()
方法。
如果你只是继承对象类,你说的基本上是创建一个新类 - 它只是提供了一个基础。 事实上,在Python 3.X中,这根本不需要。 定义类似
class Car:
def __init(self, ...
并且对象继承不言而喻。
你正在使用它的正确轨道。 继承的真正威力在于构建其他预定义的类,例如从Car继承的ElectricCar,通过以下定义:
class ElectricCar(Car):
super(ElectricCar, self).__init__()
...
这给你的Car类的功能,而不必重新定义一切。
查看有关继承的文档,了解更多详细信息。
链接地址: http://www.djcxy.com/p/30037.html