Mehrere Verwendungen des Basisschlüsselworts in C#

小老鼠
Freigeben: 2024-03-13 15:28:33
Original
845 Leute haben es durchsucht

In C# wird das Schlüsselwort „base“ verwendet, um auf die Basisklassenmitglieder der aktuellen Klasse zuzugreifen, einschließlich Felder, Eigenschaften, Methoden, Konstruktoren, Indexer und Ereignisse der Basisklasse.

Mehrere Verwendungen des Basisschlüsselworts in C#

In C# wird das Schlüsselwort „base“ verwendet, um auf die Basisklassenmitglieder der aktuellen Klasse zuzugreifen, einschließlich der Felder, Eigenschaften, Methoden, Konstruktoren, Indexer und Ereignisse der Basisklasse. Im Folgenden sind einige häufige Verwendungen des Basisschlüsselworts in C# aufgeführt:

1. Greifen Sie auf Felder oder Attribute der Basisklasse zu:

Wenn die Felder oder Attribute in der Unterklasse denselben Namen haben wie die in der Basisklasse: Sie können das Schlüsselwort base verwenden, um auf Felder oder Eigenschaften einer Basisklasse zuzugreifen.

csharp

class BaseClass  
{  
    public int Value { get; set; }  
}  
  
class DerivedClass : BaseClass  
{  
    new public int Value { get; set; }  
  
    public void ShowBaseValue()  
    {  
        Console.WriteLine("Base Value: " + base.Value); // 访问基类的Value属性  
    }  
}
Nach dem Login kopieren

2. Rufen Sie den Konstruktor der Basisklasse auf:

Im Konstruktor der abgeleiteten Klasse können Sie das Schlüsselwort base verwenden, um den Konstruktor der Klasse aufzurufen Basisklasse. Dies wird normalerweise verwendet, um geerbte Felder zu initialisieren oder eine Initialisierungslogik der Basisklasse auszuführen.

csharp

class BaseClass  
{  
    public BaseClass()  
    {  
        Console.WriteLine("BaseClass constructor called.");  
    }  
}  
  
class DerivedClass : BaseClass  
{  
    public DerivedClass() : base() // 调用基类的构造函数  
    {  
        Console.WriteLine("DerivedClass constructor called.");  
    }  
}
Nach dem Login kopieren

3. Rufen Sie die Basisklassenmethode auf:

Wenn die Unterklasse die Basisklassenmethode überschreibt, können Sie das Basisschlüsselwort verwenden, um die Basisklassenmethode The aufzurufen überschriebene Methode.

csharp

class BaseClass  
{  
    public virtual void ShowMessage()  
    {  
        Console.WriteLine("Base class message.");  
    }  
}  
  
class DerivedClass : BaseClass  
{  
    public override void ShowMessage()  
    {  
        base.ShowMessage(); // 调用基类中被重写的方法  
        Console.WriteLine("Derived class message.");  
    }  
}
Nach dem Login kopieren

4. Greifen Sie auf den Indexer der Basisklasse zu:

Wenn die Basisklasse einen Indexer hat und die abgeleitete Klasse den Indexer überschreibt, können Sie auf den zugreifen Indexer in der abgeleiteten Klasse Verwenden Sie das Schlüsselwort base, um auf den Indexer der Basisklasse zuzugreifen.

5. Auf Ereignisse der Basisklasse zugreifen:

Ähnlich kann die abgeleitete Klasse den Ereignishandler hinzufügen oder überschreiben, aber das Basisschlüsselwort kann zum Auslösen der Ereignisse verwendet werden der Basisklasse.

Bitte beachten Sie, dass das Basisschlüsselwort nur für den Zugriff auf Basisklassenmitglieder verwendet werden kann, die von der aktuellen Klasse geerbt wurden. Wenn Sie versuchen, mit „base“ auf ein Mitglied zuzugreifen, das nicht von der Basisklasse erbt, oder „base“ in einer Klasse verwenden, die keine Vererbungsbeziehung hat, meldet der Compiler einen Fehler. Darüber hinaus kann das Schlüsselwort base nicht für statische Mitglieder verwendet werden, da statische Mitglieder keiner Instanz der Klasse, sondern der Klasse selbst angehören.

Das obige ist der detaillierte Inhalt vonMehrere Verwendungen des Basisschlüsselworts in C#. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage