2020年1月18日 MRKJ page199 派生类

派生类中创建init方法,则就不会调用 基类的init

 

可以通过supper()函数调用基类的init方法

class Fruit:
    def __init__(self,color='green'):#color默认是lvse
        Fruit.color=color

    def harvest(self,color):
        print('I am %s'%color)
        print(Fruit.color)

class Apple(Fruit):
    color = 'red'
    def __init__(self):
        print('apple')
        super().__init__() #调用基类的init方法

class Orange(Fruit):
    color='yellow'
    def __init__(self):
        print('orange')
        super().__init__()

a=Apple()
o=Orange()
print(a.harvest(Apple.color))
print(o.harvest(Orange.color))

>>>

apple
orange
I am red
green
None
I am yellow
green
None

posted @ 2020-01-18 21:42  小圣庄  阅读(82)  评论(0编辑  收藏  举报