PErché non hai capito gran ché del suggerimento di R@ve
Provare per credere, visibile viene aggiornata al valore e stampata correttamente nella prima classe, mentre lo stesso "non avviene", nel secondo caso, visto che il costruttore crea una copia locale di visibile e la variabile con scope classe non viene toccata.codice:class TestClass1 { private int visibile; public TestClass1 (int v) { this.visibile = v; } public String toString() { return ("Valore di \"visibile\": " + this.visibile); } } class TestClass2 { private int visibile; public TestClass2 (int v) { int visibile = v; } public String toString() { return ("Valore di \"visibile\": " + this.visibile); } } public class TestScope { public static void main (String[] args) { System.out.println(new TestClass1(10)); System.out.println(new TestClass2(5)); } }

Rispondi quotando