aspose file tools*
The moose likes Mock Exam Errata and the fly likes Marcus Green MO 1 #34 Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Certification » Mock Exam Errata
Bookmark "Marcus Green MO 1 #34" Watch "Marcus Green MO 1 #34" New topic
Author

Marcus Green MO 1 #34

madhuri vl
Ranch Hand

Joined: Jan 17, 2001
Posts: 86
Hi,
looks MG has changed some Q to thread Q in his Mock1.
ok the foll
Which of the following statements about this code are true?
public class Morecombe{
public static void main(String argv[]){
Morecombe m = new Morecombe();
m.go(new Turing(){});
}
public void go(Turing t){
t.start();
}
}
class Turing extends Thread{
public void run(){
for(int i =0; i < 2; i++){
System.out.println(i);
}
}
}
1) Compilation error due to malformed parameter to go method
2) Compilation error, class Turing has no start method
3) Compilation and output of 0 followed by 1
4) Compilation but runtime error
Answer is 3.
I did not understand how could you pass m.go( new turing(){});
I thought it would be a compile time error but giving an output of 0 1.
Can anybody throw some light on this.
Regards,
madhuri.

madhuri.
Manfred Leonhardt
Ranch Hand

Joined: Jan 09, 2001
Posts: 1492
Hi Madhuri,
You can always pass an anonymous class in place of a named one. The beauty of Java!
The statement:
new Turing() {}
is creating a new Turing object without overridding any methods. It is anonymous because it has not been assigned to anything. It gets assigned to the Turing t parameter when being passed to the go method. Since Turing extends Thread class it is valid to call it's start method.
Regards,
Manfred.
madhuri vl
Ranch Hand

Joined: Jan 17, 2001
Posts: 86
Hi manfred,
Thank u for ur post. But I haven't seen such type of passing and still surprised how it works.
Bye,
Madhuri.
Sean Casey
Ranch Hand

Joined: Dec 16, 2000
Posts: 625
It's an anonymous class, as Manfred has pointed out. This is the kind of thing that one can find on the exam, so be careful.
madhuri vl
Ranch Hand

Joined: Jan 17, 2001
Posts: 86
Hi ceasy,
Thankyou verymuch.
 
Consider Paul's rocket mass heater.
 
subject: Marcus Green MO 1 #34