maracaibo25 ha scritto:
quando fa obj2 = obj1 vuol dire che obj2 punta all'area di memoria dove è allocato obj1 quindi obj1 è come se non ci fosse
In che senso "come se non ci fosse"?? Certo che c'é!!
Dopo queste due righe:
Vowel obj1 = new Vowel ();
Vowel obj2 = obj1;
La situazione è semplice: la variabile obj1 CONTINUA a fare riferimento a quell'oggetto Vowel e dopo la seconda riga ANCHE obj2 fa riferimento a quello stesso oggetto (ce n'é 1 solo di oggetto Vowel !).
maracaibo25 ha scritto:
come del resto obj1.var, e dunque va a stampare nel secondo system.out "o,o",non so se sono stato chiarissimo
Essendoci un solo oggetto, poi dopo che tu usi obj1 oppure obj2 per cambiare var .... lo cambi sempre sullo stesso oggetto!
Pertanto al println obj1.var e obj2.var per forza di cose prenderanno lo stesso valore, che è nell'unico oggetto Vowel.
Scusa ma veramente hai ancora questi dubbi??