Java ทำไมต้องสร้าง package

    Package (แพ็กเก็ต) คือ การเก็บไฟล์ (file) หรือ คลาส (class) ให้เป็นหมวดหมู่ เพื่อให้ง่ายในการเรียกใช้ในภายหลัง ในการเขียนโปรแกรมเราอาจจะสร้างคลาสขึ้นมาใช้งานมากหมาย และเราจะสร้าง package ขึ้นมาเพื่อเก็บคลาสต่าง ๆ ที่มีลักษณะการทำงานเหมือนหรือคล้ายกันเอาไว้ด้วยกัน

ตัวอย่าง : การสร้าง package

mystou-com-java-basic-11-1

    ภาษาจาวามีการใช้งานอยู่ทั่วโลก บางครั้งเราต้องใช้งานโค้ดของนักพัฒนาคนอื่น ๆ ดังนั้นชื่อแพ็กเก็ตจึงไม่ควรจะซ้ำกับใครเลยบนโลกใบนี้ จึงมีคำแนะนำให้นำชื่อโดเมน (domain) มาตั้งเป็นชื่อ package เช่น mystou.com ก็ตั้งชื่อแพ็กเก็ตเป็น

เป็นต้น ในโปรแกรม eclipse สามารถสร้าง package ได้ดังนี้

1. คลิกขวาที่ src ไปที่ New เลือก Package

mystou-com-java-basic-11-2

2. ตั้งชื่อ package ตามต้องการ แล้วคลิกที่ปุ่ม Finish

mystou-com-java-basic-11-3

ลองดูภาพด้านล่าง มีแพ็กเกจอยู่ 2 แพ็กเก็ต ภายในมีคลาสชื่อเดียวกัน คือคลาส Books.java

java-package-01

    จะเห็นว่าเราสามารถสร้างคลาสชื่อเดียวกันแต่อยู่คนละแพ็กเก็ตกันได้ เวลาเรียกใช้งาน ก็เพียงแค่ระบุชื่อแพ็กเก็ตให้ชัดเจนว่าเรียกใช้คลาส Books.java จากแพ็กเก็ตใด เช่น

ซึ่งจะได้ผลลัพธ์ดังนี้

java-package-02

    จากคำสั่ง com.mystou.project1.Books มันดูยาวซะเหลือเกิน ยิ่งถ้าแพ็กเก็ตยาว ๆ ก็ยิ่งจะทำให้โค้ดดูวุ่นวายมากขึ้น จึงมีคำสั่งอิมพอร์ท (import) ขึ้นมา เพื่อใช้ในการนำเข้าไฟล์ที่อยู่ต่างแพ็กเก็ตกันเข้ามาใช้งานในโปรแกรม

import คือ การนำเข้าแพ็กเก็ต (package) มาใช้งาน

ตัวอย่าง : โค้ดในส่วนของคลาส Books.java มีเหมือนกันทั้ง 2 คลาส ดังนี้
*สร้างแพ็กเก็ตแยกกัน

    เราคงเห็นแล้วว่าการสร้าง package ขึ้นมาใช้งานนั้นมีประโยชน์เพียงใด ในระบบปฏิบัติการ Windows แพ็กเก็ต ก็เปรียบเสมือนโฟล์เดอร์ต่าง ๆ นั่นเอง ในภาษา Java การสร้าง package จะใช้งานร่วมกับคำสั่ง import เสมอ


เรื่องที่เกี่ยวข้อง
– Java Basic