Question
class newthread extends Thread {
Thread t;
newthread() {
t = new Thread(this,"My Thread");
t.start();
}
public void run() {
try {
t.join()
System.out.println(t.getName());
}
catch(Exception e) {
System.out.print("Exception");
}
}
}
class multithreaded_programing {
public static void main(String args[]) {
new newthread();
}
}
What is the output of this program?
class newthread extends Thread {
Thread t;
newthread() {
t = new Thread(this,"My Thread");
t.start();
}
public void run() {
try {
t.join()
System.out.println(t.getName());
}
catch(Exception e) {
System.out.print("Exception");
}
}
}
class multithreaded_programing {
public static void main(String args[]) {
new newthread();
}
}
Answer: Option D
Was this answer helpful ?
join() method of Thread class waits for thread being called to finish or terminate, but here
we have no condition which can terminate the thread, hence code 't.join()' leads to runtime
error and nothing will be printed on the screen.
Output:
$ javac multithreaded_programing.java
$ java multithreaded_programing
Was this answer helpful ?
Submit Solution