Python中子類怎樣調用父類方法

來源:互聯網
上載者:User

  python中類的初始化方法是__init__(),因此父類子類的初始化方法都是這個,如果子類不實現這個函數,初始化時調用父類的初始化函數,如果子類實現這個函數,就覆蓋了父類的這個函數,既然繼承父類,就要在這個函數裡顯式調用一下父類的__init__(),這跟C++,jAVA不一樣,他們是自動調用父類初始化函數的。

  調用父類函數有以下方法:

  class A:

  def method(self, arg):

  pass

  class B(A):

  def method(self, arg):

  # A.method(self,arg) # 1

  # super(B, self).method(arg) #2

  super().method(arg) #3

  1.直接寫類名調用

  2.用 super(type, obj).method(arg)方法調用。

  3.在類定義中調用本類的父類方法,可以直接 super().method(arg).

  在代碼中調用對象的父類的方法的樣本:

  ob = B()

  super(B,ob).method(arg) #調用class B的父類class A的method。

  初始化中調用父類初始化方法樣本:

  class B(A):

  def __init__(self):

  super().__init__()

相關文章

Cloud Intelligence Leading the Digital Future

Alibaba Cloud ACtivate Online Conference, Nov. 20th & 21st, 2019 (UTC+08)

Register Now >

Starter Package

SSD Cloud server and data transfer for only $2.50 a month

Get Started >

Alibaba Cloud Free Trial

Learn and experience the power of Alibaba Cloud with a free trial worth $300-1200 USD

Learn more >

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。