少說話多寫程式碼之Python學習042——類04(超類 )
阿新 • • 發佈:2018-11-15
來看看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