Ora la domanda è come evitiamo questo problema e differenziamo tra le variabili di istanza, le variabili locali, i costruttori e le classi con lo stesso nome? La risposta è molto semplice; Possiamo risolverlo con l'aiuto di "Questo" parola chiave.
Questo post spiega la funzionalità del "Questo"Parola chiave in Java.
Cosa significa questo in Java?
In Java, questa parola chiave è rappresentata come una variabile di riferimento che si riferisce a un oggetto. IL "Questo"La parola chiave elimina la confusione per il compilatore a causa del quale può facilmente distinguere tra un'istanza e la variabile locale.
Andiamo al seguente esempio per maggiori dettagli.
Codice:
classe pubblica arryNel codice sopra, diamo lo stesso nome a una variabile di istanza e una variabile locale. Quindi il valore della variabile locale viene assegnato alla variabile di istanza. Infine, visualizziamo il valore con l'aiuto del metodo Disp ().
Produzione:
In questo output, puoi vedere che il compilatore si confonde con la stessa istanza e i nomi delle variabili locali e non è in grado di distinguere tra loro. Quindi restituisce 0 come output; Ora, usiamo "Questo"Parola chiave nell'esempio sopra per vedere la differenza.
Codice:
classe pubblica arryNel codice sopra, assegniamo il valore della variabile locale a una variabile di istanza usando "Questo" parola chiave. Infine, visualizziamo il valore con l'aiuto del metodo Disp ().
Produzione:
Ora vedi la differenza; Dopo aver usato "Questo"Parola chiave, il compilatore può distinguere tra variabili locali e di istanza con lo stesso nome e assegnare il valore della variabile locale alla variabile di istanza. Infine, otteniamo il risultato richiesto che è 20.
Utilizzare questa parola chiave per chiamare il metodo della classe corrente
Possiamo anche usare Questo Parola chiave per chiamare implicitamente il metodo della classe corrente, il che significa che se abbiamo creato due metodi in una classe, allora possiamo chiamare un metodo utilizzando il secondo metodo. Vediamo il seguente esempio pratico.
Codice:
classe pubblica arryIn questo codice, creiamo due metodi val () e disp (). Quindi chiediamo di stampare un messaggio nel metodo Val () e chiamare il metodo Val () nel metodo Disp () utilizzando Questo parola chiave.
Produzione:
L'output mostra che un metodo viene chiamato correttamente dal secondo metodo usando questa parola chiave.
Utilizzare questa parola chiave con i costruttori
Possiamo anche usare Questo parola chiave per chiamare un costruttore in un altro costruttore. Nel seguente esempio pratico, abbiamo usato questa parola chiave con un costruttore per la tua migliore comprensione.
Codice:
classe pubblica arryIn questo codice creiamo due costruttori. Uno è un costruttore parametrizzato e l'altro non è parametrizzato. Quindi chiamiamo costruttore non parametrizzato nel costruttore parametrizzato utilizzando Questo parola chiave.
Produzione:
L'output lo mostra Questo La parola chiave chiama correttamente il primo costruttore nel secondo costruttore.
Usa questa parola chiave come argomento
In Java, possiamo anche passare questa parola chiave come argomento in un metodo. Il seguente esempio pratico ti dà una comprensione soddisfacente.
Codice:
classe pubblica arryIn questo codice, creiamo due metodi val () e disp (). Quindi passiamo l'oggetto del arry Classe come parametro al metodo Val (). Al momento della chiamata del metodo, questa parola chiave viene passata al metodo Disp () come argomento.
Produzione:
In questo codice, abbiamo superato correttamente questa parola chiave come argomento e ottenuto l'output richiesto.
Passando attraverso gli esempi di cui sopra, hai imparato a usare Questo Parole chiave in vari scenari.
Conclusione
In Java, il "Questo"La parola chiave viene utilizzata come variabile di riferimento per gli oggetti di classe corrente. Riprende la confusione tra classi, costruttori e variabili di istanza con lo stesso nome. In questo articolo, abbiamo imparato il "Questo"Parola chiave in dettaglio, con esempi e problemi se non si utilizza"Questo" parola chiave.