Why do we call the thread object\'s start() method which in turns calls run() method, why not we directly call run() method?
start()
run()
If you directly call run() method its body is executed in context of current thread. When you invoke start() method a new thread is created and run() method is executed in this new thread.