Python支援多重繼承嗎?Python開發學習

來源:互聯網
上載者:User

標籤:Python開發   Python學習   Python入門   Python基礎   

Python支援多重繼承嗎?Python開發學習

繼承是物件導向編程的一個重要方式,通過繼承,子類可以擴充父類的功能,Python也具有該特性,除此之外,Python還可以使用多重繼承。

文法:

class subClass(Base1,Base2)

該文法的含義是建立了一個subClass類,讓它同時繼承了Base1和Base2的相關特性,關於繼承還有以下規則需要遵循:

1. 繼承只會繼承父類的方法,不能繼承父類的變數;

2. 要想繼承父類的變數,需要執行父類的__init__(self)方法;

3. 底線開頭的變數或方法,會被認為是受保護的,不能直接點出來,但如果強制打出來的話也一樣能用,只是會有警告;

4. 靜態方法中不能使用self,用@staticmethod聲明這是一個靜態方法。

執行個體:

class A(object):

    def __init__(self):

        print('A')

        super(A, self).__init__()

class B(object):

    def __init__(self):

        print('B')

        super(B, self).__init__()

class C(A,B):

    def __init__(self):

        print('C')

        super(C, self).__init__()

以上執行個體是子類C多重繼承了A和B的特性,是多重繼承最基本的用法,除此之外,還有很多用法,多重繼承的使用是需要注意的,使用不當,它帶來的麻煩可能比解決的問題還多,因此,除非現有代碼無法實現想要的功能,建議不考慮使用多重繼承!


Python支援多重繼承嗎?Python開發學習

聯繫我們

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

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

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.