Both cause a program to stop executing. It\'s clear that there must be some differences in how this happens, though. What are they?
If there are other (non-daemon) threads running, the JVM won't exit if you stop the main thread. System.exit() kills all the other threads.