ความแตกต่างระหว่าง java, javaw และ javaws:
ก่อนอื่นทั้งหมดนี้เป็นอุปกรณ์เริ่มต้น java.exe มักใช้บรรทัดคำสั่งเพื่อส่งออกไปยังหน้าต่างจะมีกระบวนการ java.exe ซึ่งสามารถมองเห็นได้ผ่านตัวจัดการงาน โดยปกติเมื่อเรารันโปรแกรม Java ขนาดเล็ก กระบวนการ java.exe จะทำงานอยู่ javaw.exe นั้นพิเศษสำหรับเราเช่นกัน เรายังสามารถดูการทำงานของกระบวนการ javaw.exe ผ่านทางตัวจัดการงานได้อีกด้วย javaws มักจะเป็นกระบวนการเมื่อเว็บเริ่มต้น
jvm.dll
jvm.dll เป็นการใช้งานเครื่องเสมือน java บนสภาพแวดล้อมแพลตฟอร์ม windows และยังเป็นส่วนหนึ่งของโปรแกรม JRE ด้วย
java.exe
java.exe เป็นแอปพลิเคชันคอนโซล win32 มันให้ความช่วยเหลือแทนการใช้ jvm.dll เพื่อรันไฟล์คลาส java เนื่องจากแอปพลิเคชันคอนโซล win32 เห็นได้ชัดว่าเกี่ยวข้องกับคอนโซล
javaw.exe
javaw.exe คล้ายกับ java.exe และเป็นแอปพลิเคชัน win32 GUI แอปพลิเคชันมีหน้าต่าง GUI ของตัวเองและไม่ได้เปิดใช้งานคอนโซล
ดังนั้นเราจึงต้องการรันโปรแกรม GUI โดยไม่ต้องใช้คอนโซลคำสั่ง
นี่คือตัวอย่าง:
คัดลอกรหัสรหัสดังต่อไปนี้:
แพ็คเกจจาวา;
นำเข้า javax.swing.*;
HelloWorldSwing คลาสสาธารณะ {
โมฆะคงที่ส่วนตัว createAndShowGUI() {
JFrame jFrame = JFrame ใหม่ ("HelloWorld Swing");
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JLabel helloLabel = JLabel ใหม่ ("สวัสดีชาวโลก!");
jFrame.getContentPane().add(helloLabel);
jFrame.pack();
jFrame.setVisible(จริง);
-
โมฆะสาธารณะคงหลัก (สตริง [] args) {
javax.swing.SwingUtilities.inurgeLater (ใหม่ Runnable () {
โมฆะสาธารณะวิ่ง () {
createAndShowGUI();
-
-
-
-
ข้างต้นเป็นโปรแกรม GUI หากต้องการรันดังต่อไปนี้ให้รันบนคอนโซล:
คัดลอกรหัสรหัสดังต่อไปนี้:
java -classpath .javaw.HelloWorldSwing
คำอธิบาย: -classpath หมายถึงการตั้งค่าพาธ classpath ไปยังไดเร็กทอรีปัจจุบัน
หลังจากรันแล้ว ให้ตรวจสอบตัวจัดการงานและกระบวนการ java.exe ปรากฏขึ้น ------ เพราะมันถูกรันผ่านคอนโซล
รูปภาพมีดังนี้:
หากคุณรันโดยตรงใน eclipse: หลังจากรันแล้ว ให้ตรวจสอบตัวจัดการงานเพื่อดูกระบวนการ javaw.exe - เนื่องจากไม่ได้รันผ่านเอาต์พุตคอนโซล
รูปภาพมีดังนี้:
หากคุณใช้ javaw เพื่อรันผ่านบรรทัดคำสั่ง มันก็จะเป็นดังแสดงในรูปด้านบน:
บันทึก:
กระบวนการเริ่มต้นโดย javaw -classpath javaw.HelloWorldSwing คือ javaw.exe
กระบวนการเริ่มต้นโดย java -classpath javaw.HelloWorldSwing คือ java.exe
ความแตกต่างอีกประการระหว่างโหมดการทำงานทั้งสองโหมดของ java.exe และ javaw.exe ก็คือหลังจากที่ java รัน GUI แล้ว มันจะบล็อกที่นั่นจนกว่าหน้าต่างจะปิด
หลังจากที่ javaw รัน GUI คุณสามารถรันคำสั่งถัดไปได้โดยตรง
javaws.exe
กระบวนการ javaws.exe เหมาะสำหรับการเริ่มโปรแกรมที่กำหนดค่าผ่านเว็บ กล่าวโดยย่อคือใช้ในเว็บแอปพลิเคชัน
สรุป:
java.exe ใช้เพื่อเริ่มโปรแกรมคอนโซลคอนโซลหน้าต่าง
javaw.exe ใช้เพื่อเริ่มโปรแกรม GUI
javaws.exe ใช้สำหรับโปรแกรมเว็บ
jvm.dll เป็นการดำเนินการตามข้อกำหนดเครื่องเสมือน Java บนแพลตฟอร์ม Windows