class ClassName(baseclasslist):
statement #(类的主体)
参数说明:
基类的所有成员(属性、方法)都会被派生类继承。当基类中的某个方法不完全适用于派生类时,就要在派生类中重写父类的这个方法。
1、派生类中的构造函数,init()方法的重写
#基类
class Fruit:
def __init__(self, color='绿色'):
self.color = color
def harvest(self):
print("水果原来是:" + self.color + "的")
#派生类
class Apple(Fruit):
pass
apple = Apple() #此时创建apple对象时自动调用Fruit类的构造函数
apple.harvest() #水果原来是绿色的
class Fruit:
def __init__(self, color='绿色'):
self.color = color
def harvest(self):
print("水果原来是:" + self.color + "的")
class Apple(Fruit):
def __init__(self, color='红色'):
print("这是Apple类的构造函数")
self.color = color
apple = Apple() #此时apple对象调用的是重写的构造函数
apple.harvest() #这是Apple类的构造函数 水果原来是红色的
class Fruit:
def __init__(self, color='绿色'):
self.color = color
def harvest(self):
print("水果原来是:" + self.color + "的")
class Apple(Fruit):
def __init__(self, color='红色'):
self.color = color
print("这是Apple类的构造函数")
super().__init__()
apple = Apple() #此时apple对象调用的是重写的构造函数
apple.harvest() #这是Apple类的构造函数 水果原来是绿色的
注意由于super().init()在self.color=color之后,所以最后类中color属性为绿色。