Neu
Hallo,
bei Interfaces in c# bemerke ich gerade einige Besonderheiten im Vergleich zu vb. Ich hätte da eine Sammlung an Fragen.
Erstmal hab ich mich eingelesen, da bin ich auf eine Diskrepanz gestoßen. Microsoft schreibt
Hinterher implementieren kann ich es nicht mit internal oder protected dann, also teilweise stimmt es dann doch?
Da komme ich dann zur zweiten Frage. Das Studio schlägt bei Angabe des Interfaces in einer Klasse vor "Schnittstelle implementieren" und "Alle member explizit implementieren"
Bei letzterem fehlt der access modifier, und es wird die Schnittstelle vorangestellt, was hat es damit auf sich?
Wenn ich an einem Interface internal oder protected definiere wird auch nur der zweite Vorschlag gemacht (also dieser Code ^).
Und als Drittes gehts um die Default-Implementierung. Funktionert das genauso wie ein virtual Member in einer base class + override in der derived class oder gibt es da Besonderheiten?
Viele Grüße
bei Interfaces in c# bemerke ich gerade einige Besonderheiten im Vergleich zu vb. Ich hätte da eine Sammlung an Fragen.
Erstmal hab ich mich eingelesen, da bin ich auf eine Diskrepanz gestoßen. Microsoft schreibt
Das geht aber, und mit internal oder protected auch, bei private muss ich eine Default-Implementierung vornehmen, da stimmts. Vielleicht ist das auch schon wieder veraltet, das ist ja wohl noch gar nicht so lange her, dass das eingeführt wurde.Interface members without an implementation can't include an access modifier. Members with a default implementation can include any access modifier.
Hinterher implementieren kann ich es nicht mit internal oder protected dann, also teilweise stimmt es dann doch?
Da komme ich dann zur zweiten Frage. Das Studio schlägt bei Angabe des Interfaces in einer Klasse vor "Schnittstelle implementieren" und "Alle member explizit implementieren"
Bei letzterem fehlt der access modifier, und es wird die Schnittstelle vorangestellt, was hat es damit auf sich?
Wenn ich an einem Interface internal oder protected definiere wird auch nur der zweite Vorschlag gemacht (also dieser Code ^).
Und als Drittes gehts um die Default-Implementierung. Funktionert das genauso wie ein virtual Member in einer base class + override in der derived class oder gibt es da Besonderheiten?
Viele Grüße
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Haudruferzappeltnoch“ ()