L'une des principales caractéristiques des langages de programmation orientée objet (POO) est « l'héritage ». L'héritage fait référence à la possibilité d'utiliser toutes les fonctionnalités d'une classe existante et de l'étendre sans avoir à réécrire la classe d'origine.
La nouvelle classe créée par héritage est appelée « sous-classe » ou « classe dérivée », et la classe héritée est appelée « classe de base », « classe parent » ou « super classe ». processus du général au spécial. Dans certains langages POO, une sous-classe peut hériter de plusieurs classes de base. Mais en général, une sous-classe ne peut avoir qu'une seule classe de base. Pour obtenir un héritage multiple, cela peut être réalisé via un héritage multiniveau.
Il existe deux manières principales d'implémenter le concept d'héritage : l'héritage d'implémentation et l'héritage d'interface.
L'héritage d'implémentation est la possibilité d'utiliser les propriétés et les méthodes d'une classe de base sans codage supplémentaire. L'héritage d'interface fait référence à l'utilisation uniquement des noms de propriétés et de méthodes, mais la sous-classe doit offrir la possibilité de les implémenter (la sous-classe refactorise la méthode de la classe parent).
Lorsque vous envisagez d'utiliser l'héritage, une chose à noter est que la relation entre deux classes doit être une relation « appartient à ». Par exemple, Employee est une personne et Manager est également une personne, les deux classes peuvent donc hériter de la classe Person. Mais la classe Leg ne peut pas hériter de la classe Person car la jambe n’est pas une personne.
Le paradigme de développement OO est à peu près le suivant : diviser les objets → classes abstraites → organiser les classes en structures hiérarchiques (héritage et synthèse) → utiliser des classes et des instances pour concevoir et mettre en œuvre plusieurs étapes.
Définition de l'héritage :
class Person(object): # 定义一个父类 def talk(self): # 父类中的方法 print("person is talking....") class Chinese(Person): # 定义一个子类, 继承Person类 def walk(self): # 在子类中定义其自身的方法 print('is walking...') c = Chinese() c.talk() # 调用继承的Person类的方法 c.walk() # 调用本身的方法 # 输出 person is talking.... is walking...
Recommandations associées : "Tutoriel Python"
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!