คุณสามารถโอเวอร์ไรด์เมธอดของคลาสพาเรนต์ได้ตลอดเวลา เหตุผลหนึ่งในการโอเวอร์ไรด์เมธอดของพาเรนต์คือ คุณอาจต้องการฟังก์ชันการทำงานที่พิเศษหรือแตกต่างในคลาสลูก (subclass)
ตัวอย่าง
#!/usr/bin/python
class Parent: # กำหนดคลาสพาเรนต์
def myMethod(self):
print 'Calling parent method'
class Child(Parent): # กำหนดคลาสลูก
def myMethod(self):
print 'Calling child method'
c = Child() # instance ของลูก
c.myMethod() # ลูกเรียกเมธอดที่โอเวอร์ไรด์แล้ว
ผลลัพธ์ (Output)
เมื่อรันโค้ดข้างต้น จะได้ผลลัพธ์ดังนี้:
Calling child method