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 viene illustrata ciascuna di queste entità per poterle distinguere.
Me
La parola chiave Me consente di fare riferimento all'istanza specifica di una classe o struttura in cui il codice è attualmente in esecuzione.La parola chiave Me ha lo stesso comportamento di una variabile oggetto o di una variabile struttura che fa riferimento all'istanza corrente.La parola chiave Me è particolarmente utile per il passaggio di informazioni relative all'istanza di una classe o struttura in esecuzione a una routine in un'altra classe, struttura o modulo.
Si supponga ad esempio che in un modulo si trovi la seguente routine:
Sub ChangeFormColor(FormName As Form)
Randomize()
FormName.BackColor = Color.FromArgb(Rnd() * 256, Rnd() * 256, Rnd() * 256)
End Sub
È possibile chiamare la routine e passare l'istanza corrente della classe Form come argomento utilizzando l'istruzione seguente.
ChangeFormColor(Me)
My
La funzione My consente di accedere in modo semplice e intuitivo a numerose classi .NET Framework per permettere agli utenti di Visual Basic di interagire con il computer, l'applicazione, le impostazioni, le risorse e così via.
MyBase
La parola chiave MyBase si comporta come una variabile oggetto che fa riferimento alla classe di base dell'istanza corrente di una classe.MyBase viene in genere utilizzata per accedere ai membri della classe di base sottoposti a override o nascosti in una classe derivata.MyBase.New viene utilizzata per chiamare in modo esplicito il costruttore di una classe base da un costruttore di una classe derivata.
MyClass
La parola chiave MyClass si comporta come una variabile oggetto che fa riferimento all'istanza corrente di una classe nella sua implementazione originale.MyClass è simile a Me, tuttavia tutte le chiamate di metodi effettuate su questa parola chiave vengono considerate come se il metodo fosse NotOverridable.