簡單了解Python多態(tài)與屬性運行原理
1.多態(tài)是指傳入不同的對象,產(chǎn)生不同的結(jié)果
多態(tài)指的是一類事物有多種形態(tài)(一個抽象類有多個子類,因而多態(tài)的概念依賴于繼承)
定義:多態(tài)是一種使用對象的方法,子類重寫父類方法,調(diào)用不同子類對象的父類方法,可以產(chǎn)生不同的執(zhí)行結(jié)果
好處:調(diào)用靈活,有了多態(tài),更容易編寫出通用的代碼。
代碼展示:
class Dog(object): def work(self): print(’指哪打哪’)class ArmyDog(Dog): def work(self): print(’追擊敵人’)class DrugDog(Dog): def work(self): print(’追查毒品’)class Person(object): def work_with_dog(self, dog): dog.work()ad = ArmyDog()dd = DrugDog()daqiu = Person()daqiu.work_with_dog(ad)daqiu.work_with_dog(dd)
2.類屬性就是類對象所擁有的屬性,它被該類的所有實例對象所共有
類屬性可以使用類對象或?qū)嵗龑ο笤L問。
例如:
class Dog(object): tooth = 10wangcai = Dog()xiaohei = Dog()print(Dog.tooth)print(wangcai.tooth)print(xiaohei.tooth)
得出的結(jié)果都為:10
記錄的某項數(shù)據(jù)始終保持一致時,定義類屬性
實例屬性要求每個對象為其單獨開辟一份內(nèi)存空間來記錄數(shù)據(jù),而類屬性為全類所共有,僅占用一份內(nèi)存,更加節(jié)省內(nèi)存空間。
3.修改類屬性
類屬性只能通過類對象修改,不能通過實例對象修改,如果通過實例對象修改類屬性,表示的是創(chuàng)建了一個實例屬性
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
