Ответ 1
-
jvm.dll
- фактическая реализация Windows JVM (или лучше, главная точка входа). Приложения C или С++ могут использовать эту DLL для запуска встроенной среды выполнения Java, и это позволит приложению напрямую взаимодействовать с JVM, например. если они хотят использовать Java для своего графического интерфейса. -
java.exe
- это оболочка вокруг DLL, так что люди могут фактически запускать классы Java без необходимости использования пользовательского приложения запуска. Это приложение Win32 Console, поэтому Windows откроет новое окно командной строки, если exe не запускается из пакетного файла. -
javaw.exe
- это оболочка типаjava.exe
, но это приложение Win32 GUI. Windows не нужно открывать окно командной строки, которое именно вы хотите запустить графическое приложение, которое открывает свои собственные окна.
EDIT: они не должны иметь никакого значения в производительности, кроме накладных расходов на создание и инициализацию процесса.
Самое главное: это не имеет значения; если вы беспокоитесь об этом, вы можете захотеть сохранить Java, а не запускать его сотни раз.