Yes, There is something missing in this code. I just chnaged this code without using inheritance.
class Bar {
int barNum = 28;
}
class Foo{
Bar myBar = new Bar();
static void changeIt(Bar myBar) { //Changed the method as static
myBar.barNum = 99;
System.out.println("myBar.barNum in changeIt is " + myBar.barNum); //changed barNum as myBar.barNum
myBar = new Bar();
myBar.barNum = 420;
System.out.println("myBar.barNum in changeIt is now " + myBar.barNum); //changed barNum as myBar.barNum
}
public static void main (
String [] args) {
Foo f = new Foo();
System.out.println("f.myBar.barNum is " + f.myBar.barNum);
changeIt(f.myBar);
System.out.println("myBar.barNum after changeIt is " + f.myBar.barNum);
}
}
Raghu J
Raghu J<br />SCJP 1.4<br /> <br />The Wind and waters are always<br />on the side of the ablest navigators.<br /><a href="http://groups.yahoo.com/group/scjp_share" target="_blank" rel="nofollow">SCJP Group</a><br /><a href="http://groups.yahoo.com/group/JavaBeat_SCWCD" target="_blank" rel="nofollow">SCWCD Group</a>