Python中多态与属性是如何实现其运行原理的复杂机制?

2026-04-20 05:201阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计570个文字,预计阅读时间需要3分钟。

Python中多态与属性是如何实现其运行原理的复杂机制?

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

记录的某项数据始终保持一致时,定义类属性

Python中多态与属性是如何实现其运行原理的复杂机制?

实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占用一份内存,更加节省内存空间。

3.修改类属性

类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

本文共计570个文字,预计阅读时间需要3分钟。

Python中多态与属性是如何实现其运行原理的复杂机制?

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

记录的某项数据始终保持一致时,定义类属性

Python中多态与属性是如何实现其运行原理的复杂机制?

实例属性要求每个对象为其单独开辟一份内存空间来记录数据,而类属性为全类所共有,仅占用一份内存,更加节省内存空间。

3.修改类属性

类属性只能通过类对象修改,不能通过实例对象修改,如果通过实例对象修改类属性,表示的是创建了一个实例属性

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。