ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ

สารบัญ:

ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ
ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ

วีดีโอ: ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ

วีดีโอ: ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ
วีดีโอ: [ชีวะ] พันธุกรรม : การถ่ายทอดพันธุกรรม ลักษณะทางพันธุกรรม เมนเดล DNA RNA 2024, พฤศจิกายน
Anonim

ความแตกต่างที่สำคัญ – การสืบทอดหลายระดับเทียบกับหลายระดับ

Object-Oriented Programming (OOP) เป็นกระบวนทัศน์ในการออกแบบโปรแกรมโดยใช้คลาสและวิธีการ สถานการณ์ในโลกแห่งความเป็นจริงสามารถจับคู่กับวัตถุได้ ดังนั้นจึงง่ายต่อการสร้างโซลูชันซอฟต์แวร์ คลาสเป็นพิมพ์เขียวในการสร้างวัตถุ มีคุณสมบัติและวิธีการ ตัวอย่างเช่น ก่อนสร้างวัตถุของนักเรียน ควรมีนักเรียนชั้นหนึ่งที่มีคุณสมบัติและเมธอด นักเรียนสามารถมีคุณสมบัติเช่น รหัสนักเรียน ชื่อและวิธีการ เช่น อ่าน เขียน เรียน วิธีการอธิบายลักษณะการทำงานในขณะที่คุณสมบัติเป็นแอตทริบิวต์ หลังจากสร้างคลาสแล้ว คุณสามารถสร้างออบเจกต์โดยใช้คลาสเหล่านั้นได้การสร้างวัตถุเรียกอีกอย่างว่าการสร้างอินสแตนซ์ของวัตถุ วัตถุไม่มีอยู่ในการแยก พวกเขาสื่อสารกับวัตถุอื่น ๆ และข้อมูลจะถูกส่งผ่านภายในวัตถุ เสาหลักของ OOP คือการสืบทอด วัตถุประสงค์ของการสืบทอดคือเพื่อเพิ่มความสามารถในการนำรหัสกลับมาใช้ใหม่ได้ มันสร้างคลาสใหม่ของคุณสมบัติและวิธีการของคลาสที่มีอยู่แล้ว คลาสที่มีอยู่เรียกว่าคลาสพื้นฐานและคลาสใหม่เรียกว่าคลาสที่ได้รับ การสืบทอดหลายรายการและการสืบทอดหลายระดับเป็นประเภทการสืบทอด บทความนี้กล่าวถึงความแตกต่างระหว่างพวกเขา ความแตกต่างที่สำคัญระหว่างการสืบทอดหลายระดับและการสืบทอดหลายระดับคือการสืบทอดหลายระดับเมื่อคลาสสืบทอดจากคลาสพื้นฐานจำนวนมากในขณะที่การสืบทอดหลายระดับคือเมื่อคลาสสืบทอดจากคลาสที่ได้รับทำให้คลาสที่ได้รับเป็นคลาสพื้นฐานสำหรับคลาสใหม่

การสืบทอดหลายรายการคืออะไร

Multiple Inheritance คือเมื่อคลาสรับค่าฐานมากกว่าหนึ่งคลาส

ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ
ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ

รูปที่ 01: การสืบทอดหลายรายการ

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

ตัวอย่างเช่น สมมติว่าคลาส A และ B มีเมธอดที่มีชื่อเดียวกันซึ่งก็คือ sum() และคลาส C มาจากทั้งสองคลาส หลังจากสร้างอ็อบเจ็กต์ประเภท C และเมธอดการเรียก sum () อาจทำให้เกิดข้อผิดพลาดได้เนื่องจากทั้งสองคลาสมีเมธอดเดียวกัน คอมไพเลอร์ไม่ทราบว่าจะเรียกใช้ฟังก์ชันใด ดังนั้น Multiple Inheritance จะเพิ่มความซับซ้อนของระบบ รองรับการสืบทอดหลายรายการในภาษา C++ แต่ภาษา เช่น Java, C ไม่รองรับการสืบทอดหลายรายการแต่ภาษาเหล่านี้ใช้อินเทอร์เฟซที่คล้ายกับคลาสแต่ไม่สามารถสร้างอินสแตนซ์ได้

มรดกหลายระดับคืออะไร

การสืบทอดหลายระดับคือการที่คลาสสืบทอดจากคลาสที่ได้รับมาทำให้คลาสที่ได้รับนั้นเป็นคลาสพื้นฐานสำหรับคลาสใหม่

ความแตกต่างที่สำคัญระหว่างการสืบทอดหลายระดับและหลายระดับ
ความแตกต่างที่สำคัญระหว่างการสืบทอดหลายระดับและหลายระดับ

รูปที่ 02: การสืบทอดหลายระดับ

มรดกหลายระดับมีสามระดับ คลาสกลางที่ B สืบทอดมาจากคลาส A และคลาส C สืบทอดจากคลาส B A คือคลาสพื้นฐานสำหรับ B และ B คือคลาสพื้นฐานสำหรับ C.

โปรแกรมที่ใช้ Multilevel Inheritance มีดังนี้ โปรแกรมเขียนด้วย Java

ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ_Figure 03
ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ_Figure 03

รูปที่ 03: โปรแกรมที่ใช้การสืบทอดหลายระดับ

ตามโปรแกรมข้างต้น คลาส A เป็นคลาสพื้นฐานสำหรับคลาส B คลาส B เป็นคลาสพื้นฐานสำหรับคลาส C คุณสมบัติและวิธีการทั้งหมดของคลาส A สามารถเข้าถึงได้โดยคลาส B คุณสมบัติและวิธีการทั้งหมดของคลาส B สามารถเข้าถึงได้โดยคลาส C ดังนั้นคลาส C สามารถเข้าถึงคุณสมบัติและวิธีการของทั้ง A และ B เมื่อสร้างวัตถุประเภท C จะสามารถเรียกทั้งสามวิธี A (), B () และ C () ผลลัพธ์จะให้ A, B, C.

ความคล้ายคลึงกันระหว่างการสืบทอดหลายระดับและหลายระดับคืออะไร

ทั้งสองประเภทเป็นมรดก

ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับคืออะไร

การสืบทอดหลายระดับเทียบกับการสืบทอดหลายระดับ

การสืบทอดหลายรายการเป็นประเภทการสืบทอดที่คลาสรับช่วงจากคลาสฐานมากกว่าหนึ่งคลาส การสืบทอดหลายระดับเป็นประเภทการสืบทอดที่สืบทอดจากคลาสที่ได้รับ ทำให้คลาสที่ได้รับนั้นเป็นคลาสพื้นฐานสำหรับคลาสใหม่
การใช้งาน
การสืบทอดหลายรายการไม่ได้ถูกใช้อย่างแพร่หลายเพราะทำให้ระบบซับซ้อนขึ้น การสืบทอดหลายระดับถูกใช้อย่างแพร่หลาย
ระดับชั้น
การสืบทอดหลายชั้นมีสองระดับชั้นคือ ชั้นฐานและชั้นที่ได้รับ การสืบทอดหลายระดับมีสามระดับชั้น ได้แก่ ชั้นฐาน ชั้นกลาง และชั้นที่ได้รับ

สรุป – การสืบทอดหลายระดับเทียบกับหลายระดับ

การสืบทอดเป็นเสาหลักของการเขียนโปรแกรมเชิงวัตถุ มรดกมีหลายประเภท เป็นการสืบทอดระดับเดียว การสืบทอดหลายระดับ การสืบทอดหลายระดับ การสืบทอดตามลำดับชั้น และการสืบทอดแบบผสม การสืบทอดระดับเดียวมีหนึ่งคลาสพื้นฐานและหนึ่งคลาสที่ได้รับ การสืบทอดตามลำดับชั้นมีหนึ่งคลาสพื้นฐานและหลายคลาสที่ได้รับ Hybrid Inheritance เป็นการผสมผสานระหว่าง Multilevel และ Multiple Inheritance บทความนี้อธิบายความแตกต่างระหว่างการสืบทอดหลายรายการและการสืบทอดหลายระดับ ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับคือการสืบทอดหลายระดับเมื่อคลาสสืบทอดจากคลาสพื้นฐานจำนวนมากในขณะที่การสืบทอดหลายระดับคือเมื่อคลาสสืบทอดจากคลาสที่ได้รับ ทำให้คลาสที่ได้รับนั้นเป็นคลาสพื้นฐานสำหรับคลาสใหม่ การสืบทอดหลายระดับนั้นใช้กันอย่างแพร่หลายมากกว่าการสืบทอดหลายระดับ

ดาวน์โหลดไฟล์ PDF หลายรายการเทียบกับการสืบทอดหลายระดับ

คุณสามารถดาวน์โหลดไฟล์ PDF ของบทความนี้และใช้เพื่อวัตถุประสงค์ออฟไลน์ตามหมายเหตุอ้างอิง โปรดดาวน์โหลดไฟล์ PDF ที่นี่ความแตกต่างระหว่างการสืบทอดหลายระดับและหลายระดับ