File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Programmer Certification (SCJP/OCPJP) and the fly likes JWhiz Thread Question (Pract.6, #51) Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Programmer Certification (SCJP/OCPJP)
Bookmark "JWhiz Thread Question (Pract.6, #51)" Watch "JWhiz Thread Question (Pract.6, #51)" New topic

JWhiz Thread Question (Pract.6, #51)

Jim Hall
Ranch Hand

Joined: Nov 29, 2001
Posts: 162
Which of the following is true regarding main Thread?
(a) It is the thread from which other "child" threads will be spawned.
(b) It must be the last thread to finish execution. When the main thread stops, the program terminates.
(c) It has the highest priority.
(d) main is not a thread.
Their answer is (a) and (b) but I think it should only be (a). Could someone explain why they chose be also.
Valentin Crettaz
Gold Digger

Joined: Aug 26, 2001
Posts: 7610
From the API

When a Java Virtual Machine starts up, there is usually a single non-daemon thread (which typically calls the method named main of some designated class). The Java Virtual Machine continues to execute threads until either of the following occurs:
- The exit method of class Runtime has been called and the security manager has permitted the exit operation to take place.
- All threads that are not daemon threads have died, either by returning from the call to the run method or by throwing an exception that propagates beyond the run method.

Hence b is not true, since you can create a new thread in the main method and start it. As a result the new Thread will be running and the main will terminate but the program will still be running until the created thread dies too.
Valentin Crettaz
Sun Certified Programmer for Java 2 Platform

[Blog] [Blogroll] [My Reviews] My Linked In
Darryl Failla
Ranch Hand

Joined: Oct 16, 2001
Posts: 129
The issue in answer b is a fundamental thread issue. How could any mock exam get that incorrect? It destroys your confidence in everything else that tester provides.

Darryl Failla
Sun Certified Java 2 Programmer
I agree. Here's the link:
subject: JWhiz Thread Question (Pract.6, #51)
It's not a secret anymore!