什么是繼承?
繼承用于指定一個(gè)類將從其父類獲取其大部分或全部功能。 它是面向?qū)ο缶幊痰囊粋€(gè)特征。 這是一個(gè)非常強(qiáng)大的功能,方便用戶對(duì)現(xiàn)有類進(jìn)行幾個(gè)或多個(gè)修改來(lái)創(chuàng)建一個(gè)新的類。新類稱為子類或派生類,從其繼承屬性的主類稱為基類或父類。
子類或派生類繼承父類的功能,向其添加新功能。 它有助于代碼的可重用性。
下圖表示:


語(yǔ)法-1
class DerivedClassName(BaseClassName):
<statement-1>
.
.
.
<statement-N>
語(yǔ)法-2
class DerivedClassName(modulename.BaseClassName):
<statement-1>
.
.
.
<statement-N>
參數(shù)說(shuō)明
必須在包含派生類定義的范圍中定義名稱BaseClassName。還可以使用其他任意表達(dá)式代替基類名稱。 當(dāng)在另一個(gè)模塊中定義基類時(shí)要指定模塊的名稱。
Python繼承示例
我們來(lái)看一個(gè)簡(jiǎn)單的python繼承示例,在這個(gè)示例中使用兩個(gè)類:Animal和Dog。Animal是父類或基類,Dog是Animal的子類。
在這里,在Animal類中定義了eat()方法,Dog類中定義了bark()方法。 在這個(gè)例子中,我們創(chuàng)建Dog類的實(shí)例,并且僅通過(guò)子類的實(shí)例調(diào)用eat()和bark()方法。 由于父屬性和行為自動(dòng)繼承到子對(duì)象,所以通過(guò)子實(shí)例也可以調(diào)用父類和子類的方法。
class Animal:
def eat(self):
print 'Eating...'
class Dog(Animal):
def bark(self):
print 'Barking...'
d=Dog()
d.eat()
d.bark()
執(zhí)行上面代碼,得到以下結(jié)果 -
Eating...
Barking...