Win a copy of Learn Spring Security (video course) this week in the Spring forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

ExamCram - Threads

 
Cathy Song
Ranch Hand
Posts: 270
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You have an application that executes the following line:
Thread myT = new Thread() ;
Which statements are correct? [Check all correct answers.]
A. The Thread myT is now in a runnable state.
B. The Thread myT has the priority of the Thread that executed the construction statement.
C. If myT.start() is called, the run method in the class where the construction statement appears will be executed.
D. If myT.stop() is called, the Thread can later be started with myT.start() and will execute the run method in the Thread class.
Answers: B
Why not C also?
Thanks.
 
Jeff Bosch
Ranch Hand
Posts: 805
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, Cathy -
It's the run() method of the runnable object that gets called. When you create and start a thread, you either pass it the runnable object or the object creating the thread must be runnable (extend Thread or implement Runnable) and have a run() method that gets called. If these conditions don't exist, Thread.run() is invoked, which does nothing.
From the API for Thread:
If this thread was constructed using a separate Runnable run object, then that Runnable object's run method is called; otherwise, this method does nothing and returns.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic