測牛學(xué)堂:軟件測試python學(xué)習(xí)之面向?qū)ο蟮睦^承和重寫知識點總結(jié)筆記
python面向?qū)ο笾^承
如果多個類中存在相同的代碼邏輯,我們可以優(yōu)化,把相同邏輯的代碼抽取封裝到父類中,再通過繼承關(guān)系,直接實例化子類對象,并調(diào)用父類中的方法使用即可。
繼承的語法:
class 類A:
pass
class 類B(類A):
pass
這樣我們就是說類B繼承了類A,類A稱之為父類,類B稱之為子類。
代碼示例:
注意:
1 繼承描述的是類與類之間的關(guān)系
2 繼承的優(yōu)勢就是減少代碼冗余,提高編程效率
3 在繼承關(guān)系中,子類可以擁有父類的所有屬性和方法。
4 繼承具有傳遞性,c繼承b,b繼承a,則c可以使用a的所有屬性和方法
5 實例對象的方法,會優(yōu)先在自己的類中查找,如果沒有,再去父類中查找
面向?qū)ο蟮闹貙?/h1>
重寫是在子類中定義了和父類名字一樣的方法,就稱為重寫。
重寫的原因在于父類中的代碼功能不能滿足子類對象的需要。
覆蓋式:父類中的代碼全部不要,直接重新定義和父類名字一樣的代碼即可。
擴展式:父類中的功能還需要,只是添加新的功能。
寫法:1 在子類中定義和父類相同名字的方法
2 使用super關(guān)鍵字調(diào)用父類的方法即可實現(xiàn)。