Klasse, die von mehreren Interfaces mit derselben Methodensignatur erbt

8

Sagen wir, ich habe drei Schnittstellen:

%Vor%

Eine Klasse, die von diesen drei Schnittstellen erbt:

%Vor%

Fragen:

  • Wenn ich das so umsetze:

    Klasse ABC: I1, I2, I3    {

    %Vor%

    }

Es kompiliert gut und läuft auch gut! Bedeutet dies, dass diese einzelne Methodenimplementierung ausreicht, um alle drei Interfaces zu erben?

  • Wie kann ich die Methode aller drei Schnittstellen implementieren und CALL THEM ? Etwas wie das:

    %Vor%

Ich weiß, dass es mit expliziter Implementierung funktioniert, aber ich kann sie nicht aufrufen. : (

    
Manish 14.05.2010, 06:11
quelle

3 Antworten

8

Wenn Sie eine explizite Implementierung verwenden, müssen Sie das Objekt in die Schnittstelle umwandeln, deren Methode Sie aufrufen möchten:

%Vor%     
Dean Harding 14.05.2010, 06:15
quelle
2

Sie können es anrufen. Sie müssen nur eine Referenz mit dem Schnittstellentyp verwenden:

%Vor%

Wenn Sie:

%Vor%

können Sie tun:

%Vor%

oder:

%Vor%     
Matthew Flaschen 14.05.2010 06:13
quelle
2

Bei der Implementierung in einer Klasse geben Sie keinen Modifizierer an. o Sie erhalten einen Kompilierungsfehler. Geben Sie auch den Namen der Schnittstelle an, um Mehrdeutigkeiten zu vermeiden. Sie können den folgenden Code ausprobieren:

%Vor%

}

    
Dilip K Misra 06.12.2012 03:41
quelle

Tags und Links