Can we override a start() method in Java?

JavaObject Oriented ProgrammingProgramming

Yes, we can override the start() method of a Thread class in Java. We must call the super.start() method to create a new thread and need to call run() method in that newly created thread. If we call the run() method directly from within our start() method, it can be executed in the actual thread as a normal method, not in a new thread.


public class ThreadTest {
   public static void main(String[] args) {
      MyThread t = new MyThread();
class MyThread extends Thread {
   public void start() { // overriding the start() method
      System.out.println("Overriding a start() method");
   public void run() {
      System.out.println("run() method ");


Overriding a start() method
run() method
Updated on 02-Jul-2020 13:03:15