python中的super()和__init__()方法有什么用

silencement
Libérer: 2020-09-19 14:04:55
original
7439 Les gens l'ont consulté

python中的super()和__init__()方法的作用:__init__()方法用来创建对象的实例变量,super()方法用于调用父类的方法。

python中的super()和__init__()方法有什么用

__init__()一般用来创建对象的实例变量,或一次性操作。super()用于调用父类的方法,可用来解决多重继承问题。单继承中,super()和__init__()功能类似。

(推荐教程:python视频教程

主要区别:

使用super()继承则不用显式引用基类,父类发生变化时,利于维护;

super()只能用于新式类中,需要继承object对象。而在多重继承时,会涉及继承顺序,直接用类名调用父类方法会涉及查找顺序、重复调用等问题。super()则是返回继承顺序的下一个类,而不是父类。

单继承时super()和__init__()实现的功能是类似的

33674e917e7d59e30489c65ba28aaea.png

结果:

00fa3009c6490e7dbdc60391fb29a1c.png

区别是使用super()继承时不用显式引用基类。

super不是父类,而是继承顺序的下一个类。在多重继承时会涉及继承顺序,super()相当于返回继承顺序的下一个类,而不是父类

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!