Visual Basic 中的 Me、My、MyBase 和 MyClass

Visual Basic 中的 MeMyMyBaseMyClass 名称相似,但用途不同。 本主题介绍这些实体中的每一个,以便区分它们。

Me 关键字提供了一种方法来引用当前正在其中执行代码的类或结构的特定实例。 Me 的行为类似于引用当前实例的对象变量或结构变量。 使用 Me 对于将有关当前正在执行的类或结构实例的信息传递给另一个类、结构或模块中的过程特别有用。

例如,假设你的某个模块中具有以下过程。

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

你可以调用此过程并使用以下语句将 Form 类的当前实例作为参数传递。

ChangeFormColor(Me)  

My

My 特征提供对许多 .NET Framework 类的简单直观访问,使 Visual Basic 用户能够与计算机、应用程序、设置、资源等进行交互。 有关这些类的列表,请参阅 Visual Basic 运行时对象参考。

MyBase

MyBase 关键字的行为类似于引用类当前实例的基类的对象变量。 MyBase 通常用于访问在派生类中被覆盖或被隐藏的基类成员。 MyBase.New 用于从派生类构造函数显式调用基类构造函数。

MyClass

MyClass 关键字的行为类似于引用最初实现的类的当前实例的对象变量。 MyClassMe 类似,但对它的所有方法调用都被视为该方法是 NotOverridable

另请参阅