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

อินเทอร์เฟซเครื่องหมายหรือติดป้ายกำกับใน Java คืออะไร

การใช้งานที่พบบ่อยที่สุดของการขยายอินเทอร์เฟซเกิดขึ้นเมื่ออินเทอร์เฟซพาเรนต์ไม่มีเมธอดใดๆ ตัวอย่างเช่น อินเทอร์เฟซ MouseListener ในแพ็กเกจ java.awt.event ขยาย java.util.EventListener ซึ่งถูกนิยามว่า:

ตัวอย่าง

package java.util; public interface EventListener {}

อินเทอร์เฟซที่ไม่มีเมธอดในมันเรียกว่า Tagging interface มีวัตถุประสงค์ทางออกแบบสองประการหลักของ Tagging interfaces:

สร้างพาเรนต์ร่วม (Creates a common parent)

เช่นเดียวกับอินเทอร์เฟซ EventListener ซึ่งถูกขยายโดยอินเทอร์เฟซอื่นๆ หลายโหลใน Java API คุณสามารถใช้ Tagging interface เพื่อสร้างพาเรนต์ร่วมในกลุ่มของอินเทอร์เฟซ ตัวอย่างเช่น เมื่ออินเทอร์เฟซขยาย EventListener JVM จะรู้ว่าอินเทอร์เฟซเฉพาะนี้จะถูกใช้ในสถานการณ์การมอบหมายเหตุการณ์ (event delegation scenario)

เพิ่มชนิดข้อมูลให้กับคลาส (Adds a data type to a class)

สถานการณ์นี้เป็นที่มาของคำว่า Tagging คลาสที่นำ Tagging interface ไปใช้งาน ไม่จำเป็นต้องกำหนดเมธอดใดๆ (เพราะอินเทอร์เฟซไม่มีเมธอด) แต่คลาสจะกลายเป็นชนิดของอินเทอร์เฟซผ่านพอลิморฟิซึม