Héritage multiple en C#

Dans l’héritage multiple, une classe peut avoir plusieurs superclasses et hériter des fonctions de toutes ses classes parentes. Comme indiqué dans la figure ci-dessous, la classe C hérite des fonctionnalités des classes A et B.
 
 

Class A { myFunction(){}}
Class B { myFunction(){}}
Class C : A, B{}

Mais C# ne prend pas en charge l’héritage multiple. Pour surmonter ce problème, nous utilisons des interfaces afin de réaliser l’héritage multiple. A l’aide d’une interface, la classe C peut obtenir les fonctionnalités des classes A et B.

interface A { myFunction(){}}
interface B { myFunction(){}}
Class C : A, B{}

Dans le cas ci-dessus, la classe ne consomme pas les membres de l’interface. Il ne s’agit que d’implémenter les membres de l’interface.
 
 

Exemple: Héritage multiple en C#
using System;

public interface A {
    void Display();
}
public interface B {
    void Display();
}
class C: A, B {
    public void Display() {
        Console.WriteLine("La méthode Display est implémentée");
    }
}
public class WayToLearnX {
    public static void Main(string[] args) {
        C c = new C();
        c.Display();
		
        A a = new C();
        a.Display();
		
        B b = new C();
        b.Display();
    }
}

La sortie :

La méthode Display est implémentée
La méthode Display est implémentée
La méthode Display est implémentée
qcm-csharp

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *