python文法學習物件導向之繼承

來源:互聯網
上載者:User

只要涉及到物件導向,”類“是必須出現的一個代名詞。

類和對象是物件導向編程的兩個主要方面。建立一個新類型,而對象是這個類的執行個體。

類的一些概念:

包括初始化方法__init__,可以理解為構造,self,理解為this,等等在前一篇文章中介紹過,現在就學習類的繼承。

繼承:

物件導向的編程帶來的主要好處之一是代碼的重用,實現這種重用的方法之一是通過繼承機制。繼承完全可以理解成類之間的類型和子類型關係。

需要注意的地方:繼承文法   class 衍生類別名(基類名)://...   基類名寫作括弧裡,基本類是在類定義的時候,在元組之中指明的。這與c#是有區別的。

何時使用繼承:假如我需要定義幾個類,而類與類之間有一些公用的屬性和方法,這時我就可以把相同的屬性和方法作為基類的成員,而特殊的方法及屬性則在本類中定義,這樣只需要繼承基類這個動作,就可以訪問到基類的屬性和方法了,它提高了代碼的可擴充性。

任何事情都有利有弊:繼承的一個弱點就是,可能特殊的本類又有其他特殊的地方,又會定義一個類,其下也可能再定義類,這樣就會造成繼承的那條線越來越長,使用繼承的話,任何一點小的變化也需要重新定義一個類,很容易引起類的爆炸式增長,產生一大堆有著細微不同的子類. 所以有個“多用組合少用繼承”的原則,(我覺得兩者一起使用才是最佳吧*^◎^*)

在python中繼承中的一些特點:

1:在繼承中基類的構造(__init__()方法)不會被自動調用,它需要在其衍生類別的構造中親自專門調用。有別於C#

2:在調用基類的方法時,需要加上基類的類名首碼,且需要帶上self參數變數。區別於在類中調用普通函數時並不需要帶上self參數

3:Python總是首先尋找對應類型的方法,如果它不能在衍生類別中找到對應的方法,它才開始到基類中逐個尋找。(先在本類中尋找調用的方法,找不到才去基類中找)。

如果在繼承元組中列了一個以上的類,那麼它就被稱作“多重繼承” 。

執行個體:定義一個模組,模組裡定義了一個基類:

子類:

輸出:

 假如在子類中不用__init__()初始化函數,那麼子類會繼承基類的屬性,如:

 輸出:

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.