版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yysyangyangyangshan/article/details/84075462
来看看Python中类的继承。被继承的类称作超类。
先看一个类,定义了一个Student类,有两个属性和三个方法。
class Student:
name='学生'
school='学校'
def init(self,n,s):
self.name=n
self.school=s
def goSchool(self):
print('%s 去 %s 上学啦!' %(self.name,self.school) )
def doWork(self):
print('%s写生字' %self.name)
s = Student()
s.init('小学生','小学')
s.goSchool()
s.doWork()
调用后看结果如下:
小学生 去 小学 上学啦!
小学生写生字
继承一个类后,称之为子类,子类拥有超类的属性和方法,同时也可以对父类的方法重写。
比如,我们实现一个继承,定义一个PrimaryStudent类,继承自Student,重新实现doWork方法。
class PrimaryStudent(Student):
def doWork(self):
print('%s造句' %self.name)
p = PrimaryStudent()
p.init('小明','二道河小学')
p.goSchool()
p.doWork()
调用输出如下:
小明 去 二道河小学 上学啦!
小明造句
除了能重写方法外,还可以扩展父类,新增方法或者属性,
再定义了PrimaryStudent2,新增一个leaveSchool的方法,
class PrimaryStudent2(Student):
def leaveSchool(self):
print('爸爸妈妈接%s放学' %self.name)
p2=PrimaryStudent2()
p2.init('大壮','三里屯小学')
p2.goSchool()
p2.doWork()
p2.leaveSchool()
调用输出如下:
大壮 去 三里屯小学 上学啦!
大壮写生字
爸爸妈妈接大壮放学
工程文件下载:https://download.csdn.net/download/yysyangyangyangshan/10785381