ความแตกต่างระหว่างแพ็คเกจและอินเทอร์เฟซใน Java

สารบัญ:

ความแตกต่างระหว่างแพ็คเกจและอินเทอร์เฟซใน Java
ความแตกต่างระหว่างแพ็คเกจและอินเทอร์เฟซใน Java

วีดีโอ: ความแตกต่างระหว่างแพ็คเกจและอินเทอร์เฟซใน Java

วีดีโอ: ความแตกต่างระหว่างแพ็คเกจและอินเทอร์เฟซใน Java
วีดีโอ: Java :: Function vs Supplier vs Consumer :: Functional Programming 2024, พฤศจิกายน
Anonim

ข้อแตกต่างที่สำคัญระหว่าง Package และ Interface ใน Java คือ Package ช่วยจัดหมวดหมู่คลาสอย่างมีระเบียบเพื่อเข้าถึงและบำรุงรักษาได้อย่างง่ายดาย ในขณะที่ Interface ช่วยในการนำการสืบทอดหลายรายการไปใช้และบรรลุสิ่งที่เป็นนามธรรม

Java เป็นหนึ่งในภาษาโปรแกรมยอดนิยม ข้อได้เปรียบหลักของ Java คือรองรับการเขียนโปรแกรมเชิงวัตถุ วิธีการนี้ช่วยให้สามารถสร้างแบบจำลองวัตถุในโลกแห่งความเป็นจริงในซอฟต์แวร์ได้ คลาสเป็นพิมพ์เขียวเพื่อสร้างวัตถุ แต่ละอ็อบเจ็กต์มีข้อมูลหรือฟิลด์เพื่ออธิบายคุณลักษณะหรือคุณสมบัติและวิธีการอธิบายพฤติกรรม บทความนี้กล่าวถึงสองแนวคิดที่เกี่ยวข้องกับ OOP ใน Java ใน Java นั่นคือ Package และ Interface

แพ็คเกจใน Java คืออะไร

Java มีคลาสจำนวนมาก การเก็บชั้นเรียนทั้งหมดไว้ในโฟลเดอร์เดียวอาจเป็นเรื่องยากเพราะเข้าถึงได้ยาก ซึ่งอาจส่งผลต่อความสามารถในการจัดการโปรแกรม Java ใช้แพ็คเกจเพื่อจัดคลาส คล้ายกับโฟลเดอร์ Java API จัดกลุ่มคลาสออกเป็นแพ็คเกจต่างๆ ตามการใช้งาน ดังนั้นแต่ละแพ็คเกจจึงมีชุดคลาสที่เกี่ยวข้อง

ตัวอย่างแพ็คเกจในภาษาจาวา

ตัวอย่างแพ็คเกจมีดังนี้ แพ็คเกจ java.io ประกอบด้วยคลาสที่รองรับอินพุตและเอาต์พุต ประกอบด้วยไฟล์, PrintStream, BufferInputStream เป็นต้น แพ็คเกจ java.net มีคลาสที่เกี่ยวข้องกับเครือข่าย ตัวอย่างบางส่วน ได้แก่ URL, Socket, ServerSocket แพ็คเกจ java.awt มีคลาสทั้งหมดที่จำเป็นในการสร้างส่วนต่อประสานกราฟิกกับผู้ใช้ นี่เป็นแพ็คเกจ Java API ไม่กี่ตัว

เมื่อโปรแกรมเมอร์ต้องการใช้บางคลาสในโปรแกรม เขาควรนำเข้าแพ็คเกจนั้น หากโปรแกรมเมอร์ต้องการใช้คลาส BufferInputStream ในแพ็คเกจ java.io เขาควรเขียนคำสั่งนำเข้าดังนี้

นำเข้า java.util. BufferInoutStream;

คำสั่งด้านล่างจะนำเข้าคลาสทั้งหมดในแพ็คเกจ util

นำเข้า java.util.;

มันเป็นไปได้ที่จะสร้างแพ็คเกจที่ผู้ใช้กำหนด

พนักงานแพ็คเกจ;

พนักงานคลาสสาธารณะ {

}

ตามตัวอย่างข้างต้น พนักงานคือชื่อแพ็คเกจ คลาส Employee เป็นส่วนหนึ่งของแพ็คเกจพนักงาน ไฟล์นี้บันทึกเป็น Employee.java ไปยังแพ็คเกจพนักงาน

นอกจากนี้ยังสามารถนำเข้าคลาสสาธารณะจากแพ็คเกจหนึ่งไปยังอีกแพ็คเกจหนึ่งได้ ดูตัวอย่างต่อไปนี้

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java

รูปที่ 01: Class A

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 2
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 2
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 2
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 2

รูปที่ 02: คลาส B

Class A อยู่ในแพ็คเกจ 1 และมีวิธีสาธารณะที่เรียกว่า display Class B อยู่ในแพ็คเกจ 2 และมีวิธีการหลัก แม้ว่าจะอยู่ในแพ็คเกจที่แยกจากกัน คลาส B สามารถสร้างวัตถุของคลาส A โดยการนำเข้า package1 หลังจากนำเข้าแพ็คเกจ 1 คลาส B จะสามารถเข้าถึงข้อมูลและวิธีการของคลาส A

โดยรวมแล้ว Package ใน Java ช่วยในการจัดระเบียบไฟล์โครงการ สิ่งนี้มีประโยชน์มากในการพัฒนาระบบขนาดใหญ่เพราะช่วยให้สามารถจัดเก็บไฟล์ทั้งหมดได้อย่างมีระเบียบ นอกจากนั้น แพ็คเกจ Java API ยังอนุญาตให้โปรแกรมเมอร์ใช้คลาสที่มีอยู่แล้ว

ส่วนต่อประสานใน Java คืออะไร

บางครั้งโปรแกรมเมอร์อาจไม่รู้ความหมายของวิธีการ ในสถานการณ์นี้ โปรแกรมเมอร์สามารถประกาศวิธีการเท่านั้น วิธีนามธรรมเป็นวิธีที่ไม่มีคำจำกัดความ มีแต่ใบประกาศ. เมื่อมีเมธอดนามธรรมอย่างน้อยหนึ่งวิธี คลาสนั้นจะกลายเป็นคลาสนามธรรม นอกจากนี้ คลาสนามธรรมสามารถประกอบด้วยเมธอดนามธรรมและเมธอดที่ไม่ใช่นามธรรม โปรแกรมเมอร์ไม่สามารถสร้างวัตถุจากคลาสนามธรรมได้

เมื่อคลาสขยายคลาสนามธรรม คลาสใหม่ควรกำหนดวิธีการนามธรรมทั้งหมดในคลาสนามธรรม กล่าวอีกนัยหนึ่ง สมมติว่าคลาสนามธรรม A มีวิธีการนามธรรมที่เรียกว่าการแสดงผล คลาส B ขยายคลาส A จากนั้นคลาส B ควรกำหนดวิธีการแสดง

ตัวอย่างอินเทอร์เฟซใน Java

สมมติว่าทั้ง A และ B เป็นคลาสนามธรรม หากคลาส C กำลังขยาย A และ B คลาส C นั้นจะต้องกำหนดวิธีการนามธรรมของทั้งสองคลาสนี่คือการสืบทอดหลายรายการ Java ไม่รองรับการสืบทอดหลายรายการ ในการใช้งานโปรแกรมเมอร์ควรใช้อินเทอร์เฟซ ถ้า A และ B เป็นอินเตอร์เฟส คลาส C ก็สามารถใช้งานได้ ดูตัวอย่างต่อไปนี้

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 3
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 3
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 3
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 3

รูปที่ 03: อินเทอร์เฟซ A

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 4
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 4
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 4
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 4

รูปที่ 04: อินเทอร์เฟซ B

อินเทอร์เฟซ A มีวิธีนามธรรม display1 และอินเทอร์เฟซ B มีวิธีการนามธรรม display2

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 5
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 5
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 5
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java_Figure 5

รูปที่ 05: คลาส C

Class C ใช้ทั้งอินเทอร์เฟซ A และ B ดังนั้นจึงควรกำหนดทั้งสองวิธี

ความแตกต่างที่สำคัญระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างที่สำคัญระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างที่สำคัญระหว่างแพ็คเกจและส่วนต่อประสานใน Java
ความแตกต่างที่สำคัญระหว่างแพ็คเกจและส่วนต่อประสานใน Java

รูปที่ 06: วิธีหลัก

ตอนนี้ในวิธีหลัก มันเป็นไปได้ที่จะสร้างวัตถุของ C และเรียกทั้งสองวิธี ในทำนองเดียวกัน อินเทอร์เฟซช่วยในการปรับใช้การสืบทอดหลายรายการใน Java

นอกเหนือจากการสืบทอดหลายรายการ อินเทอร์เฟซช่วยให้บรรลุสิ่งที่เป็นนามธรรม เป็นแนวคิดหลักอย่างหนึ่งใน OOP สิ่งที่เป็นนามธรรมช่วยให้ซ่อนรายละเอียดการใช้งานและแสดงเฉพาะฟังก์ชันต่อผู้ใช้เท่านั้น นอกจากนี้ยังช่วยให้มุ่งเน้นไปที่สิ่งที่วัตถุทำแทนวิธีการทำ เนื่องจากอินเทอร์เฟซประกอบด้วยวิธีการที่เป็นนามธรรม จึงช่วยในการเก็บถาวรสิ่งที่เป็นนามธรรม

แพ็คเกจและอินเทอร์เฟซใน Java แตกต่างกันอย่างไร

Package คือกลุ่มของคลาสที่เกี่ยวข้องซึ่งมีการป้องกันการเข้าถึงและการจัดการเนมสเปซส่วนต่อประสานเป็นประเภทอ้างอิงที่คล้ายกับคลาสซึ่งเป็นชุดของวิธีนามธรรม แพ็คเกจช่วยจัดหมวดหมู่คลาสอย่างมีระเบียบเพื่อให้เข้าถึงและบำรุงรักษาได้ง่าย ในทางกลับกัน อินเทอร์เฟซช่วยในการนำการสืบทอดหลายรายการไปใช้และเพื่อให้ได้สิ่งที่เป็นนามธรรม นี่คือข้อแตกต่างที่สำคัญระหว่าง Package และ Interface ใน Java นอกจากนี้ วิธีเขียนแพ็คเกจยังเป็นตัวพิมพ์เล็ก เช่น java.util, java.awt ถ้าชื่อของอินเตอร์เฟสคือ Area แสดงว่ามันเขียนว่า interface Area

ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java ในรูปแบบตาราง
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java ในรูปแบบตาราง
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java ในรูปแบบตาราง
ความแตกต่างระหว่างแพ็คเกจและส่วนต่อประสานใน Java ในรูปแบบตาราง

สรุป – แพ็คเกจเทียบกับส่วนต่อประสานใน Java

ความแตกต่างระหว่าง Package และ Interface ใน Java ก็คือ Package ช่วยจัดหมวดหมู่คลาสอย่างมีระเบียบเพื่อเข้าถึงและดูแลรักษาได้ง่าย ในขณะที่ Interface ช่วยในการปรับใช้การสืบทอดหลายรายการและเพื่อให้บรรลุสิ่งที่เป็นนามธรรม

แนะนำ: