面向对象编程案例02--显示地调用父类的__init__()

时间:2023-03-08 18:12:23
面向对象编程案例02--显示地调用父类的__init__()
# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#面向对象编程案例02--显示地调用父类的__init__() '''
继承是面向对象的重要特征之一,继承是2个类或多个类之间的父子关系,子类继承父类的所有共有实例变量和方法。
继承实现了代码的重用,减少代码的编写量
python在类名后用圆括号来表示继承关系,括号中的类表示父类
如果父类有init方法,则子类会显示地调用其父类的init方法,不需要重写定义。如果子类需要拓展父类的init方法,则可以父类的基础上继续拓展和添加新的属性和方法
''' class Fruit():
def __init__(self,color):
self.color=color
print '__init__()首先被调用,',self.color
def grow(self):
print 'grow():','xiaodeng' class Apple(Fruit):
def __init__(self,color):
Fruit.__init__(self,color)#显示地调用父类的__init__()
print "apple\'s color:",self.color class Banana(Fruit):
def __init__(self,color):
Fruit.__init__(self,color)
print 'banana\'s color:',self.color
def grow(self):#覆盖父类的grow方法,对grow方法进行了重写
print 'fengmei' if __name__=="__main__":
apple=Apple("red")
print '---'*10
apple.grow()
print
print
banana=Banana("blue")
banana.grow()