Java Thread Example By Implementing Runnable Interface

Chapter: Thread Last Updated: 13-06-2017 14:46:51 UTC

Program:

            /* ............... START ............... */
                
public class JavaThreadExample1 {
	public static void main(String args[]) {
		new NewThread(); // create a new thread
		try {
			for (int i = 5; i > 0; i--) {
				System.out.println("Main Thread: " + i);
				Thread.sleep(1000);
			}
		} catch (InterruptedException e) {
			System.out.println("Main thread interrupted.");
		}
		System.out.println("Main thread exiting.");
	}
}

// Create a second thread.
class NewThread implements Runnable {
	Thread t;

	NewThread() {
		// Create a new, second thread
		t = new Thread(this, "Demo Thread");
		System.out.println("Child thread: " + t);
		t.start(); // Start the thread
	}

	// This is the entry point for the second thread.
	public void run() {
		try {
			for (int i = 5; i > 0; i--) {
				System.out.println("Child Thread: " + i);
				Thread.sleep(500);
			}
		} catch (InterruptedException e) {
			System.out.println("Child interrupted.");
		}
		System.out.println("Exiting child thread.");
	}
}

                /* ............... END ............... */
        

Output

Child thread: Thread[Demo Thread,5,main]
Main Thread: 5
Child Thread: 5
Child Thread: 4
Main Thread: 4
Child Thread: 3
Child Thread: 2
Main Thread: 3
Child Thread: 1
Exiting child thread.
Main Thread: 2
Main Thread: 1
Main thread exiting.

Notes:

  • By implementing Runnable interface, you need to provide implementation for run() method.
  • start() method on thread class to start executing run() method.
  • Implementing Runnable interface does not create a Thread object, it only defines an entry point for threads in your object. It allows you to pass the object to the Thread(Runnable implementation) constructor.

Tags

Java Thread Example

Similar Programs Chapter Last Updated
Java Synchronized Method Thread 10-10-2017
Java Thread SetName() Method Thread 19-08-2017
Java Thread NotifyAll Method Thread 07-08-2017
Java Thread Synchronization Thread 07-01-2017
Java Display All Running Thread Thread 10-09-2016
Java Get Thread ID Example Thread 10-09-2016
Java Thread Suspend Example Thread 10-09-2016
Java Thread Stop Example Thread 10-09-2016
Java Set Thread Priority Thread 10-09-2016
Java Thread Status Example Thread 10-09-2016
Wait On object In Java Thread 13-08-2016
Demonstrate Join() In Java Thread Thread 13-08-2016
Wait For Threads To Finish In Java Thread 13-08-2016
Wait For Completion Of Thread In Java Thread 13-08-2016
Thread Yield In Java Example Thread 20-06-2016
Suspend Resume And Stop A Thread In Java Thread 21-07-2016
Interthread Communication In Java Example Thread 19-08-2017
Thread start() Method in Java Example Thread 21-07-2016
Thread run() Method in Java Thread 19-08-2017
Thread isAlive() Method in Java Example Thread 19-08-2017
Thread getPriority() Method In Java Example Thread 11-04-2016
Thread getName() Method In Java Example Thread 21-07-2016
Synchronized Method In Java Example Thread 25-06-2017
Wait And Notify in Java Example Thread 21-07-2016
Pause Execution with Sleep In Java Example Thread 21-07-2016
Thread Stack Trace In Java Example Thread 21-07-2016
Thread Volatile Variable In Java Example Thread 16-06-2017
Thread State In Java Example Thread 16-06-2017
Thread Sleep In Java Example Thread 15-07-2016
Thread Name In Java Example Thread 13-06-2017

1 2