Python中多态与属性是如何实现其运行原理的复杂机制?
- 内容介绍
- 文章标签
- 相关推荐
本文共计570个文字,预计阅读时间需要3分钟。
1. 多态指传入不同的对象,产生不同的结果。多态的是一类事物有多种形态(一个抽象类有多个子类,因为多态的概念依赖于继承)。定义:多态是一种使用对象的方法,子类可以重写父类的方法。
1.多态是指传入不同的对象,产生不同的结果
多态指的是一类事物有多种形态(一个抽象类有多个子类,因而多态的概念依赖于继承)
定义:多态是一种使用对象的方法,子类重写父类方法,调用不同子类对象的父类方法,可以产生不同的执行结果
好处:调用灵活,有了多态,更容易编写出通用的代码。
代码展示:
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.类属性就是类对象所拥有的属性,它被该类的所有实例对象所共有
类属性可以使用类对象或实例对象访问。
例如:
class Dog(object): tooth = 10 wangcai = Dog() xiaohei = Dog() print(Dog.tooth) print(wangcai.tooth) print(xiaohei.tooth)
得出的结果都为:10
记录的某项数据始终保持一致时,定义类属性
实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占用一份内存,更加节省内存空间。
3.修改类属性
类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。
本文共计570个文字,预计阅读时间需要3分钟。
1. 多态指传入不同的对象,产生不同的结果。多态的是一类事物有多种形态(一个抽象类有多个子类,因为多态的概念依赖于继承)。定义:多态是一种使用对象的方法,子类可以重写父类的方法。
1.多态是指传入不同的对象,产生不同的结果
多态指的是一类事物有多种形态(一个抽象类有多个子类,因而多态的概念依赖于继承)
定义:多态是一种使用对象的方法,子类重写父类方法,调用不同子类对象的父类方法,可以产生不同的执行结果
好处:调用灵活,有了多态,更容易编写出通用的代码。
代码展示:
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.类属性就是类对象所拥有的属性,它被该类的所有实例对象所共有
类属性可以使用类对象或实例对象访问。
例如:
class Dog(object): tooth = 10 wangcai = Dog() xiaohei = Dog() print(Dog.tooth) print(wangcai.tooth) print(xiaohei.tooth)
得出的结果都为:10
记录的某项数据始终保持一致时,定义类属性
实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占用一份内存,更加节省内存空间。
3.修改类属性
类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

