面向对象的继承
?面向?qū)ο蟮娜筇卣?1,繼承? 2,接口類,抽象類 3,多態(tài)鴨子類型)
1.繼承 : 子類繼承父類的一切
class? Cat(Animal):
Animal叫做父類, 也叫作基類.
Cat 叫做子類,也叫作派生類.
繼承最大的優(yōu)點(diǎn) : 節(jié)省代碼,與其他類發(fā)生關(guān)聯(lián),只能單向找,不能反向找.
為什么子類能找到父類的所有?存在父類指針的概念類名,對象都可以找到父類的所有方法.
Python3x? ?類默認(rèn)都繼承object,一切的類都繼承object繼承object類的類叫做新式類.
Python3x中只有新式類.
Python2x.默認(rèn)什么都不繼承,不繼承object的類叫做經(jīng)典類.如果在Python2x中,你讓他繼承object類,就變成新式類了.
類如果按照繼承去分的話: 單繼承, 多繼承.
單繼承:查詢順序一直向上(新式類,經(jīng)典類一樣)
?
?
?
?
?
多繼承:
新式類:廣度優(yōu)先,(廣度算法:每個節(jié)點(diǎn)用最少的次數(shù)走完每個節(jié)點(diǎn),每個節(jié)點(diǎn)有且只走一次)
查找新式類的走的順序有print(類名.mro())一步查找
?
經(jīng)典類:深度優(yōu)先, 一條路走到頭,再回來.
?
轉(zhuǎn)載于:https://www.cnblogs.com/fengkun125/p/9245117.html
總結(jié)
- 上一篇: 钓鱼基础设施的应用分析(钓鱼邮件利用、G
- 下一篇: 浅谈http协议