|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Nov 2007
Messaggi: 7
|
Chi mi spiega tale codice?e perchè stampa 11???
Esaminare attentamente il codice fornito di seguito (che è compilabile ed eseguibile
senza errori) e dire quale risultato produce il metodo test() della classe X spiegando brevemente il ragionamento che ha condotto al risultato. class A {public long a=4;} class B extends A {public long b=5;} class C extends B {public long c=6;} class D extends C {public void f() {System.out.println(a+b+c);}} class X { public void test(){ C b = new D(); b.c = 1; B c = new D(); c.b = 2; A d = c; d.a = 3; D a = (D)d; a.f(); } } |
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Dec 2003
Messaggi: 4907
|
Quote:
![]() Prova a guardare con attenzione quel che succede in test()... vedrai che non tutte le assegnazioni vengono fatte sullo stesso oggetto. |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 03:15.




















