您好,登錄后才能下訂單哦!
編程語言中面向?qū)ο蠛皖惖母拍钍鞘裁?,很多新手?duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
#一、面向?qū)ο? #面向過程與面向?qū)ο? #面向過程:過程即解決問題的過程,就是有邏輯順序,基于該思想寫程序。如設(shè)計(jì)流程圖,是一種機(jī)械式的思維方式。 #優(yōu)點(diǎn):復(fù)雜的過程流程化,進(jìn)而簡(jiǎn)單化 #缺點(diǎn):擴(kuò)展性差 #面向?qū)ο螅簩?duì)象是特征與技能的結(jié)合體,基于該思想編寫程序比如創(chuàng)造一個(gè)世界,世界是由一個(gè)個(gè)對(duì)象組成 #優(yōu)點(diǎn):可擴(kuò)展性強(qiáng) #缺點(diǎn):編程復(fù)雜高,容易出現(xiàn)過度設(shè)計(jì) #二、類 #對(duì)象是特征與技能的結(jié)合體,類是一系列對(duì)象相似的特征與技能的結(jié)合體。 #在實(shí)現(xiàn)中:一定是先有的一個(gè)個(gè)具體的對(duì)象,后總結(jié)出的類。如(人,人類) #在程序中:一定是先定義類,后產(chǎn)生對(duì)象。 #類的格式: class 類名: #類體內(nèi)的代碼在類的定義階段就會(huì)立即執(zhí)行, #如: class sut: sc='dagschool' def learn(self): print('is learing') def __init__(self,name,sex,age): #__init__在調(diào)用類時(shí)會(huì)自動(dòng)觸發(fā) self.Name=name self.Sex=sex self.Age=age #self.Name='李' #self.Sex='男' #self.Age=18 def choose_cou(self): print('choose') #類的查看屬性 print(sut.__dict__) #__dict__查看類的名稱空間 print(sut.sc) #訪問類的名稱空間,"."訪問前面名稱空間的屬性。 print(sut.learn) #learn類的函數(shù)屬性 #類的增加屬性 sut.counttry='china' print(sut.counttry) #類的修改屬性 sut.sc='DAGSCHOOL' print(sut.sc) #類的刪除屬性 del sut.counttry print(sut.counttry) #類函數(shù)的調(diào)用,必須傳參 sut.learn('ss') #調(diào)用類的過程又稱之為實(shí)例化 #1.得到的返回值,即是一個(gè)對(duì)象,該對(duì)象是一個(gè)空對(duì)象。 #2.把空對(duì)象,連同調(diào)用類時(shí)類括號(hào)參數(shù),把它拼接成一堆參數(shù),其中空對(duì)象本身要當(dāng)成第一個(gè)參數(shù),然后傳給初始化的函數(shù)__init__。如:sut.__init__(sut1,'李','男',18) sut1=sut('李','男',18) #sut1就是一個(gè)對(duì)象 print(sut1.__dict__) print(sut1.Name,sut1.Sex,sut1.Age) #類中定義的函數(shù)是綁定給對(duì)象使用的,不同的對(duì)象就是不同的綁定方法,綁定給誰,就應(yīng)該由誰來調(diào)用。誰來調(diào)用,就會(huì)誰當(dāng)做第一個(gè)參數(shù)傳給對(duì)象的函數(shù)。 class sut: sc='dagschool' def learn(self,x,y): print('%s is learing' %self.Name) print(x,y) def __init__(self, name, sex, age): # __init__在調(diào)用類時(shí)會(huì)自動(dòng)觸發(fā) self.Name=name self.Sex=sex self.Age=age sut1=sut('李','男',18) #sut1就是一個(gè)對(duì)象 print(sut1.__dict__) print(sut1.Name,sut1.Sex,sut1.Age) sut2=sut('羅','男',8) sut3=sut('候','男',181) print(sut.learn) print(sut1.learn) print(sut2.learn) print(sut3.learn) sut1.learn(1,2) sut.learn(sut1,1,2) #結(jié)果相同 #在類內(nèi)部定義的函數(shù),都應(yīng)該默認(rèn)有一個(gè)參數(shù)。 例: class Teac: schoo='oldboy' count=0 def __init__(self,name,sex,age,level,salary): self.name=name self.sex=sex self.age=age self.level=level self.salary=salary Teacher.count+=1 def teach(self): print('%s is tacahing' %self.name) t1=Teac('ii','sdf',19,56,20) t2=Teac('tr','tf',58,60,1000) t3=Teac('hg','aop',68,40,100) print(t1.count) #類及類型 g=[1,2,3,4] #g=list([1,2,3,4]) g1=list([1,2,3,4]) g2=list([1,2,3,4]) g1.append(5) #等于 list.append(g1,5) #g1相當(dāng)于默認(rèn)參數(shù)self print(g1) #綁定方法的理解 g1.append('a') g2.append('b')
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。