Now after going through serveral links like Threads and Swing I came to know that Initial thread will start the main and when components will be drawn Event dispatch thread will start.So as per my example when I am calling f.setVisible at that point Event Dispatch thread should start right ? And after that will initial thread return from main ?