การรับส่วนต่อประสานคืออะไร?

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

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

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

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