the answer to this i found on the web was this:
The AWT event dispatcher thread is not a daemon thread. You must explicitly call System.exit to terminate the JVM.
and what i understand of it is that the thread which is terminated when we close a JFrame or Applet is that the thread associated with that is not the main thread which runs when jvm starts. that is, my understanding of the 'daemon' thread in the above answer is that its the main thread that jvm executes on - backbone thread of jvm. so any jframe app we run by executing the java command on the cmd runs on other thread.
if thats not right please correct me