国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

本文輕輕松松掌握Python中類的繼承

89542767 / 505人閱讀

  類的繼承可以當(dāng)做對類的屬性和方式的器重,可以大大降低編碼量,接下來本文關(guān)鍵為大家介紹了有關(guān)Python中類的繼承的資料,原文中根據(jù)案例編碼推薦的十分詳盡,必須的小伙伴可以借鑒一下


  1.單繼承


  傳承的主要功能是促進(jìn)編碼的器重。傳承導(dǎo)致子品有著父類的方法和特性。


  立即來說個案例吧。


  classanimal:
  defeat(self):
  print("吃")
  defdrink(self):
  print("喝")
  classdog(animal):
  defdark(self):
  print("汪汪叫")
  goudan=dog()
  goudan.eat()
  goudan.drink()


  從上述的編碼能夠得知,在撰寫dog類情況下,我們也沒有重新寫過eat和drink2個方式。我們只需在dog后邊的括弧中再加上構(gòu)造函數(shù)的名稱就可以。當(dāng)子品繼承構(gòu)造函數(shù),子品就能直接應(yīng)用構(gòu)造函數(shù)中的方式了。在本例中,goudan可以直接用animal類里的eat和drink2個方式。


  并且個神奇的事是,傳承是有著傳遞性的。子品有著父類的方法和特性,并且也具備構(gòu)造函數(shù)的構(gòu)造函數(shù)具有的特性。


  2.傳承里的方法重寫


  有時,構(gòu)造函數(shù)中的辦法根本無法開展達(dá)到子品的需要。此刻我們就要方法重寫了。子品方法重寫主要有兩種狀況:


  遮蓋父類的方法


  對父類的方法開展拓展


  一類最簡單的方法是可以直接重新寫過對應(yīng)的方式。下面的表現(xiàn)是重新寫過了drink用這種方法。當(dāng)使用goudan調(diào)用drink用這種方法方式時,結(jié)論并不是喝反而是拿嘴巴飲水。


  classanimal:
  defeat(self):
  print("吃")
  defdrink(self):
  print("喝")
  classdog(animal):
  defdrink(self):
  print("拿嘴巴飲水")
  defdark(self):
  print("汪汪叫")
  goudan=dog()
  goudan.eat()
  goudan.drink()

  當(dāng)我們要求并不只是遮蓋構(gòu)造函數(shù)中的辦法,而是構(gòu)造函數(shù)方式的前提下對方式進(jìn)行拓展。實(shí)際做法就是:


  當(dāng)需要部位應(yīng)用super().構(gòu)造函數(shù)方式來啟用構(gòu)造函數(shù)方式的落實(shí)


  編碼的許多部位針對子品的需要,撰寫子品所持有的代碼編寫


  再來看個案例,這時goudan在啟用drink方式時,會輸入輸出喝和拿嘴巴飲水2個輸入輸出。


  classanimal:
  defeat(self):
  print("吃")
  defdrink(self):
  print("喝")
  classdog(animal):
  defdrink(self):
  #1.根據(jù)子品的需要撰寫特定的編碼
  print("拿嘴巴飲水")


  #2.應(yīng)用super傳承構(gòu)造函數(shù)里的fangfa


  super().drink
  defdark(self):
  print("汪汪叫")
  goudan=dog()
  goudan.eat()
  goudan.drink()


  3.多繼承


  針對Python來講,個子品可以有好幾個構(gòu)造函數(shù)。多繼承的基礎(chǔ)語法是很簡單的。廢話不多說,立即看這個案例


  classA():
  deftest(self):
  print("test")
  classB():
  defdemo(self):
  print("demo")
  classC(A,B):
  pass
  c=C()
  c.test()
  c.demo()


  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/130277.html

相關(guān)文章

  • Python -- 元類metaclass詳解

    摘要:原鏈接中的元類是什么類也是對象在理解元類之前,需要掌握中類概念。事實(shí)上,是中用于創(chuàng)建所有類的元類。類本身是元類的對象在中,除了,一切皆對象,一切都是類或者元類的對象。事實(shí)上是自己的元類, 學(xué)習(xí)契機(jī) 項(xiàng)目中使用Elasticsearch(ES)存儲海量業(yè)務(wù)數(shù)據(jù),基于ES向外提供的API進(jìn)一層封裝,按需處理原始數(shù)據(jù)提供更精確、更多樣化的結(jié)果。在研究這一層的代碼時接觸到@six.add_me...

    tracy 評論0 收藏0
  • Java編程基礎(chǔ)09——面向?qū)ο骭代碼塊&繼承&方法&final

    摘要:每次調(diào)用構(gòu)造都執(zhí)行,并且在構(gòu)造方法前執(zhí)行靜態(tài)代碼塊在類中方法外出現(xiàn),并加上修飾用于給類進(jìn)行初始化,隨著類加載而加載,一般用來給類進(jìn)行初始化,在加載的時候就執(zhí)行,并且只執(zhí)行一次。的構(gòu)造方法這是一條隱藏語句,用來訪問父類中的空參構(gòu)造。 1.代碼塊的概述和分類(了解)(實(shí)際不用) A:代碼塊概述 在Java中,使用{}括起來的代碼被稱為代碼塊。 B:代碼塊分類 根據(jù)其位置和聲明的不同...

    LeviDing 評論0 收藏0
  • [譯]什么是元類metaclass?

    摘要:如果還是沒有找到,就會使用父類中的元類來創(chuàng)建類。元類通常用于處理比較復(fù)雜的情況。這是因?yàn)槭褂昧嗽悾鼤⒅卸x的字段轉(zhuǎn)換成數(shù)據(jù)庫中的字段。中所有數(shù)據(jù)類型都是對象,它們要么是類的實(shí)例要么是元類的實(shí)例。 原文地址:what is metaclass in Python?我的簡書地址::nummy 類即對象 在理解元類之前,需要先掌握Python中的類,Python中類的概念與SmallT...

    zsirfs 評論0 收藏0
  • [譯]理解python的metaclass

    摘要:但我并不是一個翻譯者并不會嚴(yán)格遵守每行每句的翻譯有時候我會將表述換個順序省略一些我認(rèn)為無關(guān)緊要的話,以便讀者更好理解。類也是對象在理解之前,我們先要掌握中的類是什么。這個對象類自身擁有產(chǎn)生對象實(shí)例的能力。不過這樣做是為了保持向后兼容性。 前言 這篇博客是我在stackoverflow上看了一個提問回復(fù)后寫的,例子基本用的都是e-satis本人的例子,語言組織也基本按照翻譯來。 但我并不...

    liuchengxu 評論0 收藏0
  • Python 面試」第四次更新

    摘要:解決的辦法在處理計(jì)算密集型任務(wù)時,使用多進(jìn)程協(xié)程,發(fā)揮計(jì)算機(jī)多核的威力,而處理密集型,則可以使用多線程。至此,有關(guān)知識點(diǎn)的面試題就已告一段落,下次更新數(shù)據(jù)庫,方面面試題。 showImg(https://segmentfault.com/img/bVbuYzy?w=3484&h=2480); 閱讀本文大約需要 5 分鐘。 15.說一說 GIL 前面有提到由于 Python 基于 C 語...

    hellowoody 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<