Der Unterschied zwischen Java, Javaw und Javaws:
Erstens handelt es sich bei all diesen Geräten um Java-Startgeräte. Bei der Verwendung der Befehlszeile zur Ausgabe im Fenster wird ein java.exe-Prozess angezeigt, der über den Task-Manager angezeigt werden kann. Wenn wir einige kleine Java-Programme ausführen, wird normalerweise der Prozess java.exe ausgeführt. Auch javaw.exe ist für uns etwas Besonderes. Wir können die Ausführung des Prozesses javaw.exe auch über den Task-Manager verfolgen. javaws ist normalerweise der Prozess, wenn das Web gestartet wird.
jvm.dll
jvm.dll ist die Implementierung einer Java Virtual Machine auf der Windows-Plattformumgebung und ist auch Teil der JRE. Ein C-Programm kann mit jvm.dll direkt auf der JVM ausgeführt werden.
java.exe
java.exe ist eine Win32-Konsolenanwendung, die beim Ausführen von Java-Klassen eine Hilfestellung bietet, anstatt jvm.dll zu verwenden.
javaw.exe
javaw.exe ähnelt java.exe und ist eine Win32-GUI-Anwendung. Die Anwendung stellt ein eigenes GUI-Fenster bereit und aktiviert die Konsole nicht.
Daher möchten wir ein GUI-Programm ausführen, ohne dass eine Befehlskonsole erforderlich ist.
Hier ist ein Beispiel:
Kopieren Sie den Codecode wie folgt:
Paket javaw;
javax.swing.* importieren;
öffentliche Klasse HelloWorldSwing {
private static void createAndShowGUI() {
JFrame jFrame = new JFrame("HelloWorld Swing");
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel helloLabel = new JLabel("Hallo Welt!");
jFrame.getContentPane().add(helloLabel);
jFrame.pack();
jFrame.setVisible(true);
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}
Das obige ist ein GUI-Programm, um es wie folgt auszuführen:
Kopieren Sie den Codecode wie folgt:
java -classpath .javaw.HelloWorldSwing
Erläuterung: -classpath bedeutet, den Klassenpfad auf das aktuelle Verzeichnis festzulegen.
Überprüfen Sie nach der Ausführung den Task-Manager. Der Prozess java.exe wird ------ angezeigt, da er über die Konsole ausgeführt wird.
Das Bild ist wie folgt:
Wenn Sie es direkt in Eclipse ausführen: Überprüfen Sie nach der Ausführung den Task-Manager, um den Prozess javaw.exe zu sehen, da er nicht über die Konsolenausgabe ausgeführt wird.
Das Bild ist wie folgt:
Wenn Sie Javaw verwenden, um es über die Befehlszeile auszuführen, ist es auch wie in der obigen Abbildung dargestellt:
Notiz:
Der von javaw -classpath gestartete Prozess ist javaw.exe
Der von java -classpath gestartete Prozess ist java.exe
Ein weiterer Unterschied zwischen den beiden Ausführungsmodi von java.exe und javaw.exe besteht darin, dass Java nach dem Ausführen der GUI dort blockiert, bis das Fenster geschlossen wird.
Nachdem Javaw die GUI ausgeführt hat, können Sie den nächsten Befehl direkt ausführen.
javaws.exe
Der Prozess javaws.exe eignet sich zum Starten von über das Web konfigurierten Programmen. Kurz gesagt, er wird in Webanwendungen verwendet.
Zusammenfassen:
java.exe wird zum Starten des Fensterkonsolen-Konsolenprogramms verwendet
javaw.exe wird zum Starten von GUI-Programmen verwendet
javaws.exe wird für Webprogramme verwendet.
jvm.dll ist eine Implementierung der Java Virtual Machine-Spezifikation auf der Windows-Plattform