python過載父類的__init__方法
寫程式碼的時候忽然要實現繼承父類所有的方法並且修改父類的__init__
引數,這樣就叫方法過載(如果說的有錯誤歡迎留言指出修改)。
方法過載(overloading method):子類修改父類的一些引數就叫過載吧?個人理解是這樣的。
方法重寫(overiding method):子類不想原封不動的繼承父類的方法,需要進行覆蓋。
#方法過載
class A(object):
def __init__(slef,name=None,models=None):
slef.name = name
slef.models = models or "default"
def function(slef):
print(slef.name)
print(slef.models )
class B(A):
def __init__(slef):
#A.__init__(slef)
super(B,slef).__init__()
slef.models = "modify"
if __name__ == "__main__":
a = A()
a = a.function()
b = B()
b.function()
執行結果
None
default
None
modify
#方法重寫
class A(object):
def __init__(slef,name=None,models=None):
slef.name = name
slef.models = models or "default"
def function(slef):
print(slef.name)
print(slef.models )
class B(A):
def __init__(slef,name=None,models=None):
slef.name = "B"
slef.models = "modify"
if __name__ == "__main__":
a = A()
a = a.function()
b = B()
b.function()
執行結果
None
default
B
modify
相關文章
- Python繼承過程的__init__方法Python繼承
- python的__init__幾種方法總結【轉載】Python
- 簡述Python類中的 __init__、__new__、__call__ 方法Python
- Python 10-4——重寫父類的方法Python
- Python中類方法過載---大部分Python
- python 詳解類class的繼承、__init__初始化、super方法Python繼承
- python類中super()和__init__()的區別Python
- Python中__init__方法注意點Python
- Python 方法過載Python
- Python中的過載方法Python
- java關於繼承父類,需要實現父類中的構造方法Java繼承構造方法
- python的__init__()Python
- 詳細解讀Python中的__init__()方法Python
- python 類的繼承與過載Python繼承
- Python 類,函式過載Python函式
- 子類重寫父類的方法@Override的快捷鍵IDE
- 一問搞懂python的__init__和__new__方法Python
- python2中的__new__與__init__,新式類和經典類Python
- 如何理解Python3中的子類和父類?Python
- 子類繼承父類的建構函式(方法)嗎?繼承函式
- Python中的__init__()方法整理中(兩種解釋)Python
- Python中__init__的理解Python
- Eclipse中pydev開發,python過載__init__報錯,是可以正常執行EclipsedevPython
- Spring通過父類注入公用屬性的技巧Spring
- Python中的__new__、__init__、__call__三個特殊方法Python
- python入門基礎(14)--類的屬性、成員方法、靜態方法以及繼承、過載Python繼承
- python中的“__init__”函式Python函式
- 如何使用python super函式呼叫父類?Python函式
- Python中有重寫和過載的方法嗎?Python
- 類的繼承_子類繼承父類繼承
- 類中的__init__()和__call__()函式函式
- Python中常見運算子過載方法Python
- Python的類方法Python
- Python學習系列之類的定義、建構函式 def __init__Python函式
- Behavior.TemplateMethod模板方法模式:共同方法提升至父類模式
- [python]為什麼父類的值沒有改變Python
- Java中父類方法重寫有哪些需要注意的?Java
- 子類繼承父類(父類和子類裡:塊、靜態塊、構造和方法覆寫)之間呼叫順序繼承