ในคลาส Java และอินเทอร์เฟซที่เกี่ยวข้องกันจะถูกจัดกลุ่มภายใต้แพ็คเกจ แพ็คเกจไม่มีอะไรเลยนอกจากไดเร็กทอรีที่เก็บคลาสและอินเทอร์เฟซของแนวคิดเฉพาะ ตัวอย่างเช่น คลาสและอินเทอร์เฟซทั้งหมดที่เกี่ยวข้องกับการดำเนินการอินพุตและเอาต์พุตจะถูกเก็บไว้ในแพ็คเกจ java.io
การสร้างแพ็คเกจ
คุณสามารถจัดกลุ่มคลาสและอินเทอร์เฟซที่จำเป็นภายใต้แพ็คเกจเดียวโดยการประกาศแพ็คเกจที่ด้านบนของคลาส/อินเทอร์เฟซ (ไฟล์) โดยใช้คำหลัก แพ็คเกจเป็น −
ตัวอย่าง
package com.tutorialspoint.mypackage; public class Sample{ public void demo(){ System.out.println("This is a method of the sample class"); } public static void main(String args[]){ System.out.println("Hello how are you......"); } }
แตกต่างจากโปรแกรมอื่นๆ ในการคอมไพล์โปรแกรมด้วยแพ็คเกจ คุณต้องใช้ –d ตัวเลือกของคำสั่ง javac ที่ระบุเส้นทางปลายทางที่คุณต้องการสร้างแพ็คเกจ
ผลลัพธ์
javac –d . Sample.java
หากคุณไม่ได้ระบุเส้นทางปลายทาง แพ็คเกจจะถูกสร้างขึ้นในไดเรกทอรีปัจจุบัน
การนำเข้าคลาส
ในการเข้าถึงคลาส/อินเทอร์เฟซที่จัดกลุ่มภายใต้แพ็คเกจ คุณต้องเพิ่มตำแหน่งของแพ็คเกจในตัวแปร classpath (หรือตรวจสอบให้แน่ใจว่าแพ็คเกจอยู่ในไดเร็กทอรีปัจจุบัน) และนำเข้าคลาส/อินเทอร์เฟซโดยใช้คำสำคัญนำเข้า .
ตัวอย่าง
import com.tutorialspoint.mypackage.Sample; public class Test{ public static void main(String args[]){ Sample obj = new Sample(); obj.demo(); } }
ผลลัพธ์
This is a method of the sample class
นำเข้าคลาสสองครั้ง
ได้ คุณสามารถนำเข้าคลาสได้สองครั้งใน Java ซึ่งจะไม่สร้างปัญหาใดๆ แต่ไม่ว่าจะนำเข้ากี่ครั้ง JVM จะโหลดคลาสเพียงครั้งเดียว
ตัวอย่าง
ในโปรแกรม Java ต่อไปนี้ เรากำลังพยายามนำเข้าคลาสตัวอย่างของ com.tutorialspoint.mypackage เพียงครั้งเดียวเท่านั้น
import com.tutorialspoint.mypackage.Sample; import com.tutorialspoint.mypackage.Sample; public class Test{ public static void main(String args[]){ Sample obj = new Sample(); obj.demo(); } }
ผลลัพธ์
Sample class loaded This is a method of the sample class