继承
#coding:utf-8
class Person:
'''人类'''
def __init__(self, name):
print "Person.__init__()..."
self.name = name
def show(self):
print "Person.show()..."
print self.name
class Student(Person):
'''学生类'''
def __init__(self, name, age):
#C++子类的构造函数会默认调用父类的构造,来初始化父类继承的变量
#python子类需要手动调用父类的构造
Person.__init__(self, name)
print "Stuent.__init__.."
self.age = age
def show(self):
#重写
print "Stuent.show ()..."
print self.name
print self.age
if __name__ == "__main__":
p1 = Person("Father")
p1.show()
s1 = Student("Son", 18)
s1.show()
输出
Person.__init__()...
Person.show()...
Father
Person.__init__()...
Stuent.__init__..
Stuent.show ()...
Son
18