版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
python面向?qū)?化為0重寫方法str,輸出貓的定義并創(chuàng)建貓的對象傳入然后每調(diào)用一次yearPass方法就打印一下貓的信息每過幾年,給貓?zhí)砑语椢铩?歲添加衣服,5歲添加腳墊,8歲添加鈴鐺,10歲剃胡子。貓。1貓。3貓,8貓,10歲。衣服、腳墊、鈴鐺、剃胡子。abc定義類,de對對象進行編程。classclass始definit(self,name):=name#self.age=0 self.outlook物#過了一defyearPass(self):self.age+=1#加1ifself.age==3:self.outlook.append('衣服elifelifself.age==5:elifself.age==8:elifself.age==10:defstrdesc'%s,%d(,self.age)iflen(self.outlook)==0:desc'無飾物'desc+='%s'%','.join(self.outlook)returndesccat1Cat('加菲貓')foriinrange(10):私Pythonclass始defclass始definit(self,name):=nameself.age=0defyearPass(self):self.age+=defstrreturn'name:%s,age:%d'%(,self.dog1=Dog(dog1=Dog(' ='snoopy'dog1.age=88dog2=Dog('snoopy')print(dog2.age)使用者嘗試修改狗的和dog2=Dog('snoopy')print(dog2.age)dog2=Dog('snoopy')#print(dog2.dog2=Dog('snoopy')#print(dog2.age)class始defclass始definit(self,name):=nameself.age=0defself.setAge(self.getAge()+ def returnself. defsetAge(self, self.age=dog3dog3Dog(#dog3.setAge(13)defstrreturn'name:%s,age:%d'%(,self.dog3Dog('薩摩'dog3Dog('薩摩')dog3.setAge(13)繼class子類class子類(父類classdefeat(self):print('Animaleat')classDog(Animal):dog1=classdefeat(self):print('Animaleat')classDog(Animal):defprint('Dogdog1=Dog()classDog(Animal):defsuper().eat()#調(diào)用父類的方print('Dogdog2=子類還可以繼續(xù)派生它的子類(孫類#子類的子classHabaDog(Dog):defeat(self):super().eat()#調(diào)用父類的方print('HabaDogHabaDogdog2=HabaDog()classdefeat(self):print('Animaleat'classdefeat(self):print('Animaleat')classclassAnimal(object):defeat(self):print('Animal后面一種寫法(object)稱為新式類。推薦使用。class始class始definit(self,name):=namedefstrreturn'name:%s'%defdel(self):print('Animalclass始definit(self,name,age):Animal.init(self,name)self.age=agedefdel(self):print('Dogdel')Animal.deldog1=',如果父類中有私有的屬性或方法,子類中也是不能classclassdefinit(self,name):=name=defstrreturn'name:%s,age:%d'%(,self.age)defgetAge(self):returnself.agedefdel(self):print('Animaldog1=print(self.getAge())#報錯。子類不 父類的私有方defdel(self):print('Dogdel')Animal.del(self)classdefinit(self,name):Animal.init(self,name)defprint(self.age)self.面向?qū)ο笾蓄惻c類之間的關(guān)classclassAnimal(object):classDog(Animal):classclassdefinit(self):self.leg=classLeg(object):classclassdefinit(self):self.leg=咬defbid(self,print(+classdefinit(self):self.leg=養(yǎng)deffeed(self,print(+UML1狗咬1人養(yǎng)1**面向?qū)ο笏?大原則,23妖抓人人蛇喜喜白青如圖,抓妖,因為蛇妖是妖的子類,所以一定會抓蛇妖反過來,喜歡白蛇,白蛇是蛇妖的子類,但是不一定喜歡蛇妖classclassdefdefinit(self,name):=namedefgetName(self):classdefinit(self,name):super().init(name)classdefinit(self,name):super().init(name)classdefinit(self,name):super().init(name)classdefinit(self,name):=namedefcatch(self,print(classdefinit(self,name):=namedeflove(self,print(fash1=FaShi(' qing1=QingShe(' bai1=BaiShe(' man1=Man(' 多繼class子類class子類(12classclassBase1(object):defprint('--test1--classBase2(object):defprint('--test2--#子類Sub同時繼承Base1classSub(Base1,Base2):sub=Sub()鉆石繼classAnimal(object):defclassAnimal(object):definit(self):print('AnimalclassHorse(Animal):definit(self):Animal.init(self)print('Horseinit')classdefinit(self):Animal.init(self)print('Lvinit')classLuo(Horse,Lv):definit(self):Horse.init(self)Lv.init(self)print('Luoinit')luo=會發(fā)現(xiàn)鉆石繼承中,Animalinit被調(diào)用了兩次。classAnimal(object):definitclassAnimal(object):definit(self):print('AnimalclassHorse(Animal):definit(self):#Animal.init(self)super(Horse,self).init()print('Horseinit')classclassdefinit#Animal.initprint('Lvinit')classLuo(Horse,Lv):definit#Horse.init(self)#Lv.init(self)print('Luoinit')luo=Luo()super(Luo,self).initsuper(Lv,self).initsuper().init()classclassAnimal(object):defeat(self):print('AnimalclassHorse(Animal):defeat(self):print('HorseclassLv(Animal):defprint('LvclassLuo(Horse,Lv):luo=Luo()MRO:MethodResolutionMROLuo對象調(diào)用一個方法,查找該方法的順序的類分別是:Luo、Horse、Lvclassclassdefinit(self):print('selfis',self)classdefinitprint('fromBselfis',self)classdefinitprint('fromCselfis',self)classD(A,B,definit(self):print('Dsuper(D,self).init()super(A,self).init()super(B,self).init()super(C,self).initX=super(D,self).super(D,self).init表示要查找init()
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《兩只小象》教案設(shè)計
- 醫(yī)療健康產(chǎn)業(yè)園售樓部施工合同
- 林業(yè)項目招標投訴處理辦法
- 工程施工農(nóng)民工薪酬保障措施
- 制藥業(yè)鍋爐安全手冊
- 商業(yè)廣場供暖系統(tǒng)工程合同
- 社區(qū)服務(wù)公務(wù)車租賃協(xié)議
- 四人股東權(quán)益分配協(xié)議
- 美容養(yǎng)生招投標市場動態(tài)
- 籃球館喜劇表演租賃協(xié)議
- 【課件】禮儀與教化 課件-高中美術(shù)湘美版(2019)美術(shù)鑒賞
- 臨床教學(xué)能力師資培訓(xùn)考試測試題
- 家庭居室裝飾裝修工程保修單
- 小學(xué)生漢語拼音田字格練習(xí)
- 《旅行社經(jīng)營與管理》教學(xué)課件匯總?cè)纂娮咏贪?完整版)
- 消防工程技術(shù)標書(暗標)
- DBJ∕T 15-138-2018 建筑電氣防火檢測技術(shù)規(guī)程
- 北師大版數(shù)學(xué)七年級上冊期中測試題【含答案】(共4套)
- 2022年WABCO防抱死系統(tǒng)
- 離婚登記申請受理回執(zhí)單(民法典版)
- 《過敏性休克》PPT課件(PPT 32頁)
評論
0/150
提交評論