Sup ragazzi, ho una domanda semplice, ma bugging. Per quanto ho capito, static
significa sostanzialmente che, per ogni singola istanza di quella classe, questo metodo sarà lo stesso, se lo cambiamo, questo cambierà per ogni singola istanza di quella classe, è anche noto come Metodo di Classe. Beh, se ho una classe che implementa toString()
metodo strega per un certo formato, diciamo:Perché toString() non può essere un metodo statico?
public String toString() {
return "(" + x + "," + y + ")";
}
Perché non può essere impostata come statica? Dato che questo formato sarà lo stesso per ogni singola istanza di quella classe ...?
Pensa a xey. Se sono campi non statici, un metodo statico non può accedervi. –
@PatriciaShanahan, così dici che se xey erano valori statici, il metodo toString() poteva essere impostato come statico? –
La tua comprensione di 'static' è leggermente disattivata. 'static' significa che viene creata una sola istanza (almeno per le variabili). È possibile accedere a variabili/metodi 'static' senza nemmeno istanziare un oggetto (ad esempio' ClassName.toString() '. Inoltre, non è necessario creare un nuovo metodo per ogni oggetto, hanno tutti lo stesso metodo disponibile – Justin