Me, My, MyBase y MyClass en Visual Basic
Me
, My
, MyBase
y MyClass
en Visual Basic tienen nombres similares, pero propósitos diferentes. En este tema se describe cada una de estas entidades para distinguirlas.
Yo
La palabra clave Me
proporciona una manera de hacer referencia a la instancia específica de una clase o estructura en la que el código se está ejecutando actualmente. Me
se comporta como una variable de objeto o una variable de estructura que hace referencia a la instancia actual. El uso de Me
es especialmente útil para pasar información sobre la instancia en ejecución de una clase o estructura a un procedimiento de otra clase, estructura o módulo.
Por ejemplo, imagine que tiene el siguiente procedimiento en un módulo.
Sub ChangeFormColor(FormName As Form)
Randomize()
FormName.BackColor = Color.FromArgb(Rnd() * 256, Rnd() * 256, Rnd() * 256)
End Sub
Puede llamar a este procedimiento y pasar la instancia actual de la clase Form como argumento mediante la instrucción siguiente.
ChangeFormColor(Me)
My
La característica My
proporciona acceso fácil e intuitivo a una serie de clases de .NET Framework, lo que permite al usuario de Visual Basic interactuar con el equipo, la aplicación, la configuración, los recursos, etc. Para ver una lista de estas clases, consulte la referencia Objetos en tiempo de ejecución de Visual Basic.
MyBase
La palabra clave MyBase
se comporta como una variable de objeto que hace referencia a la clase base de la instancia actual de una clase. MyBase
se usa normalmente para acceder a los miembros de la clase base que se invalidan o se reemplazan en una clase derivada. MyBase.New
se usa para llamar explícitamente a un constructor de clase base desde un constructor de clase derivada.
MyClass
La palabra clave MyClass
se comporta como una variable de objeto que hace referencia a la instancia actual de una clase según su implementación original. MyClass
es similar a Me
, pero todas las llamadas de método en ella se tratan como si el método fuera NotOverridable
.