.Plateforme NET ne supporte pas l'héritage multiple. Ne confondez pas l'héritage à plusieurs niveaux d'héritage multiple. Avec l'héritage multiple, nous pouvons avoir une sous-classe qui hérite de deux classes en même temps.
Supposons que nous avons une application qui possède une classe de clients et une autre classe de fournisseurs. Si vous voulez combiner ces deux classes dans une classe de CustomerVendor il serait une combinaison de clients et des fournisseurs, tout comme le schéma ci-dessous.
Veuillez copier le lien suivant dans un nouveau Windsor de navigateur pour afficher le diagramme : http://www.vbprofs.com/images/Article Images/VBNETinheritance.gif
Dans le diagramme ci-dessus, nous voyons comment la classe CustomerVendor hérite de deux de ces classes.
Héritage multiple est complexe et peut être dangereux. L'emportent sur les avantages de la re-utilisation de code complexité est à votre choix.
Héritage multiple n'est pas pris en charge par VB.NET ou.Plateforme net. Au lieu de l'héritage multiple, nous pouvons utiliser plusieurs interfaces pour obtenir un effet similaire à l'héritage multiple.
En VB.NET, tous les objets ont une interface primaire ou indigène, qui se compose des propriétés, des événements, des méthodes ou des variables de membre déclarée à l'aide du mot clé Public. Objets peuvent implémenter aussi interfaces secondaires à l'aide de la clé de la mise en œuvre.
Il est parfois utile pour un objet avoir plus d'une interface, ce qui nous permet d'interagir avec l'objet de différentes façons. Héritage nous permettent de créer des sous-classes sont une affaire spécialisée de la classe de base.
Exemple
Parfois, nous avons un groupe d'objets qui ne sont pas les mêmes, mais nous voulons traiter de la même manière. Nous voulons que tous les objets d'agir comme si ce sont les mêmes, même si elles sont différentes.
Nous pouvons avoir des objets différents dans une application, comme client, produit, facture, etc.. Chaque objet aurait une interface par défaut appropriée à chaque objet individuel, et chacun d'eux est une classe différente. Aucun héritage naturel n'est implicite entre ces classes.
Supposons que nous voulons imprimer un document pour chaque type d'objet. Dans ce cas, nous voudrions rendre tous agissent comme objet imprimable. Pour ce faire, nous pouvons définir une interface générique qui permettrait de générer un document imprimé. En implémentant une interface commune, nous sommes capables d'écrire une routine qui accepte tout objet qui implémente un document imprimé.
Pour conclure, en mettant en œuvre plusieurs interfaces en VB.NET, nous pouvons obtenir un effet similaire à celui de l'héritage multiple.
No comments:
Post a Comment