Python 當父類擁有同名的方法

2021-10-07 16:19:52 字數 972 閱讀 9600

繼承作為物件導向的三大特性之一,為我們的程式設計帶來極大的便利,更好地掌握繼承能夠讓我們寫出更加優美簡潔的**。本篇部落格意在讓讀者了解當父類擁有同名方法時,子類繼承方法的規則。首先觀察以下兩個示例:

class a:

def method1(self):

print('a')

class b:

def method1(self):

print('b')

def method2(self):

print('b')

class c:

def method1(self):

print('c')

def method2(self):

print('c')

class d(a,c,b):

pass

d = d()

d.method1()

d.method2()

執行結果

ac

class a:

def method1(self):

print('a')

class b:

def method1(self):

print('b')

def method2(self):

print('b')

class c:

def method1(self):

print('c')

def method2(self):

print('c')

class d(a,b,c):

pass

d = d()

d.method1()

d.method2()

執行結果

ab

通過以上兩個示例可以發現,當父類擁有同名方法時,子類中的繼承的方法與繼承時父類的順序有關,並且前乙個父類的方法會覆蓋後面父類中的同名方法

Python中呼叫父類的同名方法

物件導向設計時,無可避免的會涉及到父類和子類的關係 封裝 整合 多型,大家都能娓娓道來 道理是一樣的,針對不同的語言,物件導向開發也會遇到不同情況需要解決 今天學習下python中如何呼叫父類同名方法 ps 如果不呼叫的話,子類同名方法對父類方法是直接覆蓋的 class fooparent def ...

在Python多繼承中呼叫父類的同名方法

coding utf 8 類定義 class people object 定義基本屬性 name age 0 定義私有屬性 weight 0 定義構造方法 def init self,n,a,w self.name n self.age a self.weight w 定義方法 defspeak s...

python繼承父類的呼叫

python中的乙個派生類整合多個基類時候。例項化派生類物件後呼叫方法。如下 class baserequest pass class requesthandler baserequest def process request self print requesthandler.process r...