การสืบทอด
เรียนรู้การนำความสามารถกลับมาใช้ใหม่และขยายความสามารถผ่านการสืบทอด
การสืบทอด เป็นบทเรียน Learn AI with Python ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 6 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Learn AI with Python และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 6 บทเรียน
บทนำสู่การสืบทอด
บทนำสู่การสืบทอด
การสืบทอดเป็นแนวคิดหลักในการเขียนโปรแกรมเชิงวัตถุ (OOP) ซึ่งช่วยให้คลาสหนึ่ง (คลาสย่อย) สืบทอดแอตทริบิวต์และเมธอดจากอีกคลาสหนึ่ง (คลาสหลัก) ได้ แนวคิดนี้ส่งเสริมการนำโค้ดกลับมาใช้ใหม่และทำให้โค้ดเป็นระเบียบมากขึ้น
ในบทเรียนนี้ คุณจะได้เรียนรู้วิธีนำการสืบทอดมาใช้ใน Python และทำความเข้าใจประโยชน์ของการสืบทอด

การกำหนดคลาสแม่
การกำหนดคลาสแม่
คลาสแม่คือคลาสพื้นฐานที่คลาสอื่นสืบทอดมา โดยกำหนดเช่นเดียวกับคลาสอื่น ๆ:
# Defining a superclass
class Animal:
def speak(self):
print("Animal speaks")การสร้างคลาสย่อย
การสร้างคลาสย่อย
คลาสย่อยจะสืบทอดแอตทริบิวต์และเมธอดจากคลาสแม่ หากต้องการกำหนดคลาสย่อย ให้ส่งชื่อคลาสแม่เป็นพารามิเตอร์:
# Defining a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")การเขียนทับเมธอด
การเขียนทับเมธอด
คลาสย่อยสามารถเขียนทับเมธอดจากคลาสหลักเพื่อกำหนดพฤติกรรมเฉพาะได้:
# Overriding methods in a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")
animal = Animal()
animal.speak() # Outputs: Animal speaks
dog = Dog()
dog.speak() # Outputs: Dog barksการใช้ฟังก์ชันเรียกใช้คลาสหลัก
การใช้ฟังก์ชัน super()
ฟังก์ชัน super() ช่วยให้คุณเรียกใช้เมธอดจากคลาสหลักในคลาสย่อยได้:
# Using super() to call superclass methods
class Dog(Animal):
def speak(self):
super().speak()
print("Dog barks")การสืบทอดจากหลายคลาส
การสืบทอดจากหลายคลาส
Python รองรับการสืบทอดจากหลายคลาส โดยคลาสย่อยสามารถสืบทอดจากคลาสหลักได้มากกว่าหนึ่งคลาส:
# Example of multiple inheritance
class Flyer:
def fly(self):
print("Flying")
class Swimmer:
def swim(self):
print("Swimming")
class Duck(Flyer, Swimmer):
passการตรวจสอบความสัมพันธ์ของคลาส
การตรวจสอบความสัมพันธ์ของคลาส
คุณสามารถตรวจสอบ relationships ของคลาสได้โดยใช้ฟังก์ชัน isinstance() และ issubclass()
# Checking class relationships
# Checking if an object is an instance of a class
print(isinstance(Dog(), Dog)) # Outputs: True
# Checking if a class is a subclass of another
print(issubclass(Dog, Animal)) # Outputs: Trueข้อผิดพลาดที่พบบ่อยเกี่ยวกับการสืบทอด
ข้อผิดพลาดที่พบบ่อยเกี่ยวกับการสืบทอด
ต่อไปนี้คือข้อผิดพลาดบางประการที่ควรหลีกเลี่ยง:
- เขียนทับเมธอดโดยไม่เรียกใช้
super()เมื่อจำเป็น - สับสนกับลำดับการค้นหาเมธอด (MRO) ในการสืบทอดจากหลายคลาส
- ใช้การสืบทอดเมื่อการประกอบอ็อบเจ็กต์อาจเป็นทางเลือกที่ดีกว่า
เรียนรู้อะไรบ้าง
เรียนรู้อะไรบ้าง
ในบทเรียนนี้ คุณได้เรียนรู้ว่า:
- กำหนดคลาสหลักและคลาสย่อยได้อย่างไร
- เขียนทับเมธอดและใช้
super()ได้อย่างไร - การสืบทอดจากหลายคลาสทำงานใน Python อย่างไร
ทำได้ดีมาก! ไปยังหัวข้อถัดไปกันเถอะ

คำถามที่พบบ่อย
บทเรียน “การสืบทอด” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การสืบทอด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Learn AI with Python ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Learn AI with Python มีบทเรียนทั้งหมด 6 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การสืบทอด”
เรียนรู้การนำความสามารถกลับมาใช้ใหม่และขยายความสามารถผ่านการสืบทอด คุณปฏิบัติ Learn AI with Python ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Learn AI with Python หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Learn AI with Python บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 6 บทเรียน
บทเรียน “การสืบทอด” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Learn AI with Python นี้ได้ไหม
ได้ บทเรียน Learn AI with Python ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- คลาสและออบเจ็กต์
- แอตทริบิวต์และเมธอด
- การสืบทอด
- พหุสัณฐาน
- การห่อหุ้มและนามธรรม
- เมธอดพิเศษ (__str__, __repr__ และอื่น ๆ)