Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

เราสามารถรันโปรแกรม Java โดยไม่มีเมธอด main ได้ไหม

ใช่ เราสามารถรันโปรแกรม Java โดยไม่มีเมธอด main ได้โดยใช้บล็อก static

บล็อก static ใน Java คือกลุ่มคำสั่งที่ถูกดำเนินการเพียงครั้งเดียวเมื่อคลาสถูกโหลดเข้าหน่วยความจำโดย Java ClassLoader ยังเรียกอีกอย่างว่า static initialization block บล็อกเริ่มต้นแบบ static เข้าสู่หน่วยความจำ Stack โดยตรง

ตัวอย่าง

class StaticInitializationBlock{    static{       System.out.println("class without a main method");       System.exit(0);    } }

ในตัวอย่างข้างต้น เราสามารถรันโปรแกรม Java โดยไม่มีเมธอด main (ทำงานได้จนถึง Java 1.6) Java 7 และเวอร์ชันใหม่กว่าไม่อนุญาตให้ทำเช่นนี้ เพราะ JVM ตรวจสอบการมีอยู่ของเมธอด main ก่อนเริ่มต้นคลาส

ผลลัพธ์

class without a main method.