can only a single process be executed
A single-threaded program is a program that only uses one thread. The process might have additional threads; for your example of the Java runtime, you can expect to have a finalizer thread and perhaps one or more threads for garbage collection. It's a single-threaded program running in a multi-threaded process.