Me, My, MyBase e MyClass in Visual Basic
Me
, My
, MyBase
e MyClass
in Visual Basic hanno nomi simili, ma scopi diversi. In questo argomento vengono descritte tutte queste varie entità in modo da poterle distinguere.
Me stesso
La parola chiave Me
consente di fare riferimento all'istanza specifica di una classe o di una struttura in cui il codice è attualmente in esecuzione. Me
si comporta come una variabile oggetto o una variabile di struttura che fa riferimento all'istanza corrente. L'uso di Me
è particolarmente utile per passare informazioni sull'istanza attualmente in esecuzione di una classe o di una struttura a una routine in un'altra classe, struttura o modulo.
Si supponga, ad esempio, di avere la routine seguente in un modulo.
Sub ChangeFormColor(FormName As Form)
Randomize()
FormName.BackColor = Color.FromArgb(Rnd() * 256, Rnd() * 256, Rnd() * 256)
End Sub
È possibile chiamare questa routine e passare l'istanza corrente della classe Form come argomento usando l'istruzione seguente.
ChangeFormColor(Me)
My
La funzionalità My
offre un accesso semplice e intuitivo a una serie di classi .NET Framework, consentendo all'utente di Visual Basic di interagire con il computer, l'applicazione, le impostazioni, le risorse e così via. Per un elenco di queste classi, vedere il riferimento Oggetti di runtime di Visual Basic.
MyBase
La parola chiave MyBase
si comporta come una variabile oggetto che fa riferimento alla classe base dell'istanza corrente di una classe. MyBase
viene comunemente usato per accedere ai membri della classe base sottoposti a override o nascosti in una classe derivata. MyBase.New
viene usato per chiamare in modo esplicito un costruttore della classe base da un costruttore di classi derivate.
MyClass
La parola chiave MyClass
si comporta come una variabile oggetto che fa riferimento all'istanza corrente di una classe come implementato originariamente. MyClass
è simile a Me
, ma tutte le chiamate al metodo vengono considerate come se il metodo fosse NotOverridable
.