Python多态 简单了解Python多态与属性运行原理
鸡龟骨滚羹 人气:01.多态是指传入不同的对象,产生不同的结果
多态指的是一类事物有多种形态(一个抽象类有多个子类,因而多态的概念依赖于继承)
定义:多态是一种使用对象的方法,子类重写父类方法,调用不同子类对象的父类方法,可以产生不同的执行结果
好处:调用灵活,有了多态,更容易编写出通用的代码。
代码展示:
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.修改类属性
类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性
加载全部内容