簡單了解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)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. jsp+servlet簡單實現(xiàn)上傳文件功能(保存目錄改進)2. .Net反向代理組件Yarp用法詳解3. 解決request.getParameter取值后的if判斷為NULL的問題4. .NET Framework各版本(.NET2.0 3.0 3.5 4.0)區(qū)別5. 詳解JSP 內(nèi)置對象request常見用法6. JSP中param動作的實例詳解7. ASP.NET MVC實現(xiàn)下拉框多選8. ASP.NET MVC增加一條記錄同時添加N條集合屬性所對應的個體9. .NET中的MassTransit分布式應用框架詳解10. ASP.NET MVC實現(xiàn)本地化和全球化
