Ich habe ein Tutorial über das Erstellen eines benutzerdefinierten Prinzipals gelesen und bin auf den Code gestoßen:
%Vor%Wie genau funktioniert "geschütztes virtuelles Neues"?
Stichwort "neu" ist das, was mich am meisten verwirrt.
protected
bedeutet, dass es nur innerhalb dieser Klasse und daraus abgeleiteten Klassen sichtbar ist.
virtual
bedeutet, dass es in abgeleiteten Klassen überschrieben werden kann.
new
bedeutet, dass Sie hier eine neue überschreibende Hierarchie erstellen, d. h. Sie beenden die Überschreibung der in der Basisklasse definierten Methode und ersetzen sie durch diese Methode.
Weitere Details finden Sie hier
> new
wird zum Ausblenden von Elementen verwendet.
Im Gegensatz zu einer überschriebenen Methode wird eine new
-Methode nicht durch einen Verweis auf die Basisklasse aufgerufen.
Weitere Informationen finden Sie in der Dokumentation .
Ihre Schlüsselfrage: "Das Schlüsselwort new
verwirrt mich am meisten."
Kurze Antwort: new
und override
schließen sich gegenseitig aus. new
wird verwendet, um ein von einer Basisklasse geerbtes Klassenmitglied zu ersetzen . Im Gegensatz dazu wird override
verwendet, um die Basisklassenimplementierung eines Members zu erweitern .
Von neuer Modifikator (C # -Referenz) (Visual Studio 2013) :
Es ist ein Fehler, sowohl new als auch override zu verwenden auf demselben Mitglied, weil die beiden Modifikatoren einander ausschließende Bedeutungen haben. Das neue Modifier erstellt ein neues Mitglied mit demselben Namen und verursacht die ursprüngliches Mitglied, um versteckt zu werden. Der Modifikator überschreiben erweitert die Implementierung für ein geerbtes Mitglied.
Tags und Links c#