การสร้างและใช้งานโมดูลใน Java (Creating and Using Modules in Java)
— java — 1 min read
การสร้างและใช้งานโมดูลใน Java ช่วยให้คุณสามารถแบ่งโปรแกรมออกเป็นส่วนย่อยที่เป็นอิสระและสามารถนำมาใช้ซ้ำได้ โมดูลใน Java จะเป็นเหมือนแพ็กเกจที่มีคลาสและอิสระที่จะเข้าถึงกันได้
สำหรับการสร้างและใช้งานโมดูลใน Java คุณสามารถทำตามขั้นตอนดังนี้:
- สร้างโปรเจกต์ Java ใหม่และสร้างไดเร็กทอรีใหม่สำหรับโมดูลของคุณ
- ในไดเร็กทอรีของโมดูล สร้างไฟล์
module-info.java
เพื่อกำหนดโมดูล - ระบุชื่อและค่าที่จำเป็นในไฟล์
module-info.java
เช่น ชื่อโมดูลและการอ้างอิงไปยังแพ็กเกจอื่น ๆ - สร้างคลาสหรืออิสระภายในโมดูลของคุณ
- สร้างแพ็กเกจในโมดูลและเพิ่มคลาสหรืออิสระลงในแพ็กเกจนั้น
- คอมไพล์และสร้างโมดูลของคุณ
- ในโปรเจกต์หลัก อ้างอิงโมดูลที่คุณสร้างในขั้นตอนก่อนหน้านี้
นี่คือตัวอย่างโค้ดสำหรับการสร้างและใช้งา นโมดูลใน Java:
// ในไดเร็กทอรีของโมดูล// File: module-info.javamodule mymodule { exports com.example.mymodule; // กำหนดแพ็กเกจที่จะสามารถเข้าถึงได้จ ากภายนอกโมดูล
requires someothermodule; // กำหนดโมดูลที่ต้องการอ้างอิง}
// ในแพ็กเกจ com.example.mymodule// File: MyModuleClass.javapackage com.example.mymodule;
public class MyModuleClass { public void sayHello() { System.out.println("Hello from MyModule!"); }}
// ในโปรเจกต์หลัก// File: MainClass.javapackage com.example;
import com.example.mymodule.MyModuleClass;
public class MainClass { public static void main(String[] args) { MyModuleClass myModule = new MyModuleClass(); myModule.sayHello(); }}`
ในตัวอย่างด้านบน เราสร้างโมดูลชื่อ mymodule
และกำหนดให้แพ็กเกจ com.example.mymodule
สามารถเข้าถึงได้จากภายนอกโมดูล โมดูลของเราอาศัยโมดูลอื่น someothermodule
ด้วยคำสั่ง requires
ในไฟล์ module-info.java
ในโปรเจกต์หลัก เราอ้างอิงโมดูล mymodule
และสร้างอินสแตนซ์ของคลาส MyModuleClass
และเรียกใช้เมธอด sayHello()
ของคลาสนั้น
โปรดจำไว้ว่าเมื่อคอมไพล์โมดูลแล้ว คุณจะต้องระบุโมดูลเป็นพารามิเตอร์ในการรันโปรแกรม โดยใช้คำสั่ง --module
และชื่อโมดูล
// ในไดเร็กทอรีของโมดูล// File: module-info.javamodule mymodule { exports com.example.mymodule; // กำหนดแพ็กเกจที่จะสามารถเข้าถึงได้จากภายนอกโมดูล
requires someothermodule; // กำหนดโมดูลที่ต้องการอ้างอิง}
// ในแพ็กเกจ com.example.mymodule// File: MyModuleClass.javapackage com.example.mymodule;
public class MyModuleClass { public void sayHello() { System.out.println("Hello from MyModule!"); }}
// ในแพ็กเกจ com.example// File: MainClass.javapackage com.example;
import com.example.mymodule.MyModuleClass;
public class MainClass { public static void main(String[] args) { MyModuleClass myModule = new MyModuleClass(); myModule.sayHello(); }}`
ในตัวอย่างด้านบน เราสร้างโมดูลชื่อ mymodule
และกำหนดให้แพ็กเกจ com.example.mymodule
สามารถเข้าถึงได้จากภายนอกโมดูล โมดูลของเราอาศัยโมดูลอื่น someothermodule
ด้วยคำสั่ง requires
ในไฟล์ module-info.java
ในโปรเจกต์หลัก เราอ้างอิงโมดูล mymodule
และสร้างอินสแตนซ์ของคลาส MyModuleClass
และเรียกใช้เมธอด sayHello()
ของคลาสนั้น
โปรดจำไว้ว่าเมื่อคอมไพล์โมดูลแล้ว คุณจะต้องระบุโมดูลเป ็นพารามิเตอร์ในการรันโปรแกรม โดยใช้คำสั่ง --module
และชื่อโมดูล