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

เหตุใด Java จึงไม่รองรับการสืบทอดหลายรายการ


ใน Java คลาสไม่สามารถขยายได้มากกว่าหนึ่งคลาส ดังนั้นการติดตามจึงผิดกฎหมาย -

ตัวอย่าง

public class extends Animal, Mammal{}

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

เหตุผลเบื้องหลังคือเพื่อป้องกันความกำกวม

พิจารณากรณีที่คลาส B ขยายคลาส A และคลาส C และทั้งคลาส A และ C มีเมธอด display() เดียวกัน

ตอนนี้คอมไพเลอร์จาวาไม่สามารถตัดสินใจได้ว่าควรใช้วิธีการแสดงแบบใด เพื่อป้องกันสถานการณ์ดังกล่าว ไม่อนุญาตให้มีการสืบทอดหลายรายการใน java