เกี่ยวกับ การสืบทอดทั้งสามประเภท การ แทนที่ และ ความหลากหลายนั้น การสืบทอดคือสิ่งที่เราใช้บ่อยที่สุดในชีวิตประจำวัน เมื่อเราต้องการคลาสย่อยที่คล้ายกันจำนวนมาก ถ้าเรากำหนดทีละคลาส มันจะเปลืองพื้นที่และเวลาอย่างมาก เราเพียงแต่ต้องกำหนดคลาสพาเรนต์ นั่นคือ กำหนดเทมเพลต จากนั้นจึงสืบทอดคุณสมบัติและพฤติกรรมทั้งหมดของคลาสพาเรนต์ เมื่อโรงงานผลิตชิ้นส่วนเครื่องจักรกลบางอย่างในปริมาณมาก ก็ไม่จำเป็นต้องวาดแบบสำหรับชิ้นส่วนแต่ละชิ้น เราดำเนินการผลิตจำนวนมากโดยใช้รูปวาดแทน เรายังนำแนวคิดนี้มาใช้เมื่อใช้การสืบทอดในโปรแกรม แต่เมื่อเราต้องการเปลี่ยนแปลงบางอย่างกับอุปกรณ์เสริมที่สืบทอดมา เราสามารถใช้วิธีเขียนใหม่ได้ ของมรดกและการเขียนใหม่
มรดกที่เรียกว่า หมายความว่า บุตรสืบทอดมรดกของบิดา
มาเรียนรู้เกี่ยวกับการสืบทอดตามตัวอย่างกันดีกว่า
classBase:#Define คลาสพาเรนต์ชื่อ Base def__init__(self,name,age,id):self.name=nameself.age=ageself.id=idprint('สืบทอดคลาส Base')print('ชื่อของฉัน :',self .name)print('My age:',self.age)print('หมายเลขนักเรียนของฉัน:',self.id)defgoto_school(self):print(self.name,'Base class is been used The goto_school method in gos to school') classStudent(Base): #เมื่อสืบทอดคลาสพาเรนต์ เมธอดทั้งหมดในคลาสพาเรนต์จะได้รับการสืบทอด passxiaoming=Student('Xiaoming',20,1001)xiaoming.goto_school()
ผลลัพธ์คือ:
สืบทอดคลาส Base ฉันชื่อ: เซียวหมิง อายุของฉัน: 20 หมายเลขนักเรียนของฉัน: 1001 เซียวหมิงใช้วิธี goto_school ในชั้นเรียนฐานเพื่อไปโรงเรียน
เรามาวิเคราะห์ตัวอย่างนี้กัน ขั้นแรก เราได้กำหนดคลาสที่ชื่อ Base ไว้ด้านบน คลาสนี้จะมีเมธอด Constructor ซึ่งรวมถึงชื่อ ชื่อ และหมายเลขนักเรียน จากนั้นจึงระบุเมธอด goto_school() ด้านล่างซึ่งสืบทอดคลาส Base ข้างต้น จากนั้นเราจะเรียกคลาส Student โดยตรง โดยแสดงผลลัพธ์ เราจะเห็นว่าแม้ว่าจะไม่มีอะไรในคลาส Student แต่ชุดของฟังก์ชันยังคงสามารถดำเนินการได้ พฤติกรรมเหล่านี้ และคุณสมบัติทั้งหมดสืบทอดมาจาก Base และในบรรทัดสุดท้ายเรายังเรียกว่าเมธอดใน Base ซึ่งยังคงสามารถเรียกได้สำเร็จ