PDA

View Full Version : [JAVA] chi mi aiuta a capire cosa fà stò codice?


cristian8503
14-12-2008, 18:19
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();
}
}

fero86
14-12-2008, 20:10
se ho fatto bene i conti stampa 10.

FixFixFix
14-12-2008, 21:03
secondo me 11:

alla fine dovresti avere

b --> 4-5-1
c -->4-2-6
d -->3-2-6
a -->3-2-6

fero86
14-12-2008, 22:23
ah é vero, dovrebbe venire 11; comunque la variabile b é del tutto inutile.

cristian8503
15-12-2008, 10:12
grazie della soluzione..è cosi!!

malocchio
15-12-2008, 23:46
Occhio, andrebbe rinominato Contest 14:fagiano: