創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)主營西工網(wǎng)站建設的網(wǎng)絡公司,主營網(wǎng)站建設方案,重慶App定制開發(fā),西工h5小程序設計搭建,西工網(wǎng)站營銷推廣歡迎西工等地區(qū)企業(yè)咨詢小編給大家分享一下Python中繼承的案例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家學習,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去學習方法吧!
繼承是面向?qū)ο蟮娜筇卣髦唬彩菍崿F(xiàn)代碼復用的重要手段。繼承經(jīng)常用于創(chuàng)建和現(xiàn)有類功能類似的新類,又或是新類只需要在現(xiàn)有類基礎上添加一些成員(屬性和方法),但又不想直接將現(xiàn)有類代碼復制給新類。
例如,有一個 Shape 類,該類的 draw() 方法可以在屏幕上畫出指定的形狀,現(xiàn)在需要創(chuàng)建一個 Rectangle 類,要求此類不但可以在屏幕上畫出指定的形狀,還可以計算出所畫形狀的面積。要創(chuàng)建這樣的 Rectangle 類,除了將 draw() 方法直接復制到新類中,并添加計算面積的方法,其實還有更簡單的方法,即讓 Rectangle 類繼承 Shape 類,這樣當 Rectangle 類對象調(diào)用 draw() 方法時,Python 解釋器會自動去 Shape 類中調(diào)用該方法,如此,我們只需在 Rectangle 類中添加計算面積的方法即可。
Python 中,實現(xiàn)繼承的類稱為子類,被繼承的類稱為父類(也可稱為基類、超類)。子類繼承父類的語法是:在定義子類時,將多個父類放在子類之后的圓括號里。語法格式如下:
class 類名(父類1, 父類2, ...): #類定義部分
注意,Python 的繼承是多繼承機制,即一個子類可以同時擁有多個直接父類。
從上面的語法格式來看,定義子類的語法非常簡單,只需在原來的類定義后增加圓括號,并在圓括號中添加多個父類,即可表明該子類繼承了這些父類。如果在定義一個 Python 類時,并未顯式指定這個類的直接父類,則這個類默認繼承 object 類。
object 類是所有類的父類,要么是直接父類,要么是間接父類。
父類和子類的關系,就好像水果和蘋果的關系,蘋果是一種特殊的水果,蘋果是水果的子類,水果是蘋果的父類,因此可以說,蘋果繼承了水果。不僅如此,由于子類是一種特殊的父類,因此父類包含的范圍總比子類包含的范圍要大,所以可以認為父類是大類,而子類是小類。
從實際意義上看,子類是對父類的擴展,子類是一種特殊的父類。從這個意義上看,使用繼承來描述子類和父類的關系是錯誤的,用擴展更恰當。因此,這樣的說法更加準確:蘋果擴展了水果這個類。
下面程序示范了子類繼承父類的特點。下面是 Fruit 類的代碼:
class Fruit: def info(self): print("我是一個水果!重%g克" % self.weight) class Food: def taste(self): print("不同食物的口感不同") # 定義Apple類,繼承了Fruit和Food類 class Apple(Fruit, Food): pass # 創(chuàng)建Apple對象 a = Apple() a.weight = 5.6 # 調(diào)用Apple對象的info()方法 a.info() # 調(diào)用Apple對象的taste()方法 a.taste()
運行結(jié)果為
我是一個水果!重5.6克 不同食物的口感不同
上面程序中,定義了兩個父類:Fruit 類和 Food 類,接下來定義了一個 Apple 類,該類本身是空類,但其繼承自 Food 類和 Fruit 類。因此,在主程序部分創(chuàng)建了 Apple 對象之后,可以訪問 Apple 對象的 info() 和 taste() 方法,這表明 Apple 對象也具有了 info() 和 taste() 方法,這就是繼承的作用,即子類擴展(繼承)了父類,將可以繼承得到父類定義的方法,這樣子類就可復用父類的方法了。
以上是Python中繼承的案例分析的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司行業(yè)資訊頻道!
文章題目:Python中繼承的案例分析-創(chuàng)新互聯(lián)
當前URL:http://muchs.cn/article28/phhcp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、關鍵詞優(yōu)化、服務器托管、標簽優(yōu)化、企業(yè)網(wǎng)站制作、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容