ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส

สารบัญ:

ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส
ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส

วีดีโอ: ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส

วีดีโอ: ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส
วีดีโอ: ซุปเปอร์คาร์ กับ ไฮเปอร์คาร์ ...ต่างกันยังไง??? # Supercar vs Hypercar — What’s the Difference? 2024, พฤศจิกายน
Anonim

ความแตกต่างที่สำคัญ – ซูเปอร์คลาส vs คลาสย่อย

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

Superclass คืออะไร

ในการสืบทอด คลาสที่มีอยู่ซึ่งมาจากคลาสใหม่นั้นเรียกว่า Superclass เรียกอีกอย่างว่าคลาสหลักหรือคลาสพื้นฐาน

มรดกมีหลายประเภท มีภาพประกอบโดยใช้ตัวอย่างต่อไปนี้ พิจารณา AB และ C เป็นชั้นเรียน

ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส
ความแตกต่างระหว่างซูเปอร์คลาสและซับคลาส

รูปที่ 01: ประเภทมรดก

ความแตกต่างระหว่าง Superclass และ Subclass_Figure 02
ความแตกต่างระหว่าง Superclass และ Subclass_Figure 02

รูปที่ 02: มรดกลูกผสม

ตามแผนภาพด้านบน ซูเปอร์คลาสจะแตกต่างกันไปตามประเภทการสืบทอดแต่ละประเภท ในการสืบทอดระดับเดียว A คือซูเปอร์คลาส ในการสืบทอดหลายระดับ A คือ Superclass สำหรับ B และ B คือ Superclass สำหรับ C. ใน Hierarchical Inheritance A คือ Superclass สำหรับทั้ง B และ C ในมรดกหลายรายการ ทั้ง A และ B เป็น Superclasses สำหรับ C

การสืบทอดแบบไฮบริดเป็นการรวมกันระหว่างมรดกหลายระดับและหลายระดับ ในแผนภาพด้านซ้ายมือ A คือ Superclass สำหรับ B, C และ B, C คือ Superclasses สำหรับ D ในแผนภาพด้านขวามือ A คือ Superclass สำหรับ B และ B, D คือ Superclasses สำหรับ C.

ดูโปรแกรมด้านล่างที่เขียนด้วยภาษาจาวา

ความแตกต่างที่สำคัญระหว่าง Superclass และ Subclass
ความแตกต่างที่สำคัญระหว่าง Superclass และ Subclass

รูปที่ 03: โครงการสืบทอดในภาษาจาวา

ตามโปรแกรมด้านบน คลาส A มีวิธี sum() และ sub() คลาส B มีเมธอด multiply() คลาส B กำลังขยายคลาส A ดังนั้น คุณสมบัติและเมธอดของคลาส A สามารถเข้าถึงได้โดยคลาส B ดังนั้น คลาส A จึงเป็นซูเปอร์คลาส ประเภทอ้างอิงของคลาส B ถูกนำมาใช้เพื่อสร้างวัตถุ ดังนั้นวิธีการทั้งหมดเช่น sum(), sub() และ multiply() สามารถเข้าถึงได้โดยวัตถุ หากใช้ประเภทการอ้างอิง Superclass สำหรับการสร้างอ็อบเจ็กต์ สมาชิกคลาส B จะไม่สามารถเข้าถึงได้ เช่น. obj=ใหม่ B(); ดังนั้น การอ้างอิง Superclass จึงไม่สามารถเรียกเมธอด multiply() ได้ เนื่องจากเมธอดนั้นเป็นของคลาส B

ซับคลาสคืออะไร

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

ในการสืบทอดแบบไฮบริด ไดอะแกรมทางด้านซ้าย B และ C เป็นคลาสย่อยของ A. D คือคลาสย่อยของ B และ C ในแผนภาพทางด้านขวา B คือคลาสย่อยสำหรับ A. C คือคลาสย่อย ของ B และ D.

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

ความคล้ายคลึงกันระหว่างซูเปอร์คลาสกับซับคลาสคืออะไร

ทั้งสองเกี่ยวข้องกับมรดก

ซุปเปอร์คลาสและซับคลาสต่างกันอย่างไร

ซูเปอร์คลาสกับซับคลาส

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

สรุป – ซูเปอร์คลาส vs ซับคลาส

มรดกคือแนวคิดของ OOP อนุญาตให้ใช้คุณสมบัติและเมธอดของคลาสที่มีอยู่เพื่อเข้าถึงโดยคลาสใหม่ คลาสที่สืบทอดมาคือ Superclass และคลาสที่ได้รับคือคลาสย่อย ความแตกต่างระหว่าง Superclass และ Subclass คือ Superclass เป็นคลาสที่มีอยู่ซึ่งได้รับคลาสใหม่ในขณะที่ Subclass เป็นคลาสใหม่ที่สืบทอดคุณสมบัติและวิธีการของ Superclass

ดาวน์โหลดไฟล์ PDF Superclass vs Subclass

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