Freigeben über


Me, My, MyBase und MyClass in Visual Basic

Me, My, MyBase, und MyClass in Visual Basic haben ähnliche Namen, aber unterschiedliche Zwecke. In diesem Thema werden die einzelnen Entitäten beschrieben, um sie zu unterscheiden.

Ich

Das Me Schlüsselwort bietet eine Möglichkeit, auf die spezifische Instanz einer Klasse oder Struktur zu verweisen, in der der Code derzeit ausgeführt wird. Me verhält sich wie eine Objektvariable oder eine Strukturvariable, die auf die aktuelle Instanz verweist. Die Verwendung Me ist besonders hilfreich, um Informationen zur derzeit ausgeführten Instanz einer Klasse oder Struktur an eine Prozedur in einer anderen Klasse, Struktur oder einem anderen Modul zu übergeben.

Angenommen, Sie haben die folgende Prozedur in einem Modul.

Sub ChangeFormColor(FormName As Form)  
   Randomize()  
   FormName.BackColor = Color.FromArgb(Rnd() * 256, Rnd() * 256, Rnd() * 256)  
End Sub  

Sie können diese Prozedur aufrufen und die aktuelle Instanz der Form Klasse als Argument übergeben, indem Sie die folgende Anweisung verwenden.

ChangeFormColor(Me)  

Mein

Das My Feature bietet einfachen und intuitiven Zugriff auf eine Reihe von .NET Framework-Klassen, sodass der Visual Basic-Benutzer mit dem Computer, der Anwendung, einstellungen, Ressourcen usw. interagieren kann. Eine Liste dieser Klassen finden Sie im Visual Basic-Laufzeitobjektverweis .

MyBase

Das MyBase Schlüsselwort verhält sich wie eine Objektvariable, die auf die Basisklasse der aktuellen Instanz einer Klasse verweist. MyBase wird häufig verwendet, um auf Mitglieder der Basisklasse zuzugreifen, die in einer abgeleiteten Klasse überschrieben oder verdeckt werden. MyBase.New wird verwendet, um explizit einen Basisklassenkonstruktor aus einem abgeleiteten Klassenkonstruktor aufzurufen.

MyKlasse

Das MyClass Schlüsselwort verhält sich wie eine Objektvariable, die auf die aktuelle Instanz einer Klasse verweist, wie sie ursprünglich implementiert wurde. MyClass ähnelt Me, aber alle Methodenaufrufe werden behandelt, als wäre die Methode NotOverridable.

Siehe auch