Hi Ali,
Thread th=new Thread(new MyRunnable());
step 1> new MyRunnable() will create an object of MyRunnable.
Note: Through runnable you can explicitly mention "Thread of excecution".
step 2> new Thread(new MyRunnable());
without Thread Object there is no use of Thread of execution.
Now thread object initialyzed with new "Thread of excution".
step 3> Thread th=new Thread(new MyRunnable());
I got another doubt:
th.run() should call the default run method in Thread(i expected..> but Runnable run() executed? How it blocking default run()?) th.start() should call the Runnable run()( this is ok, becuase
In start method it can check for Runnable Object and call its run())
Note: Thread object contains default run() method which does nothing. If you don't provide a seperate "thread of execution" through Runnable, then the default one will get called