self 應(yīng)用

1.為了更好的理解面向?qū)ο缶幊?,下面以“烤地瓜”為案例,進(jìn)行分析

2.分析“烤地瓜”的屬性和方法

1.示例屬性如下:

·cookedLevel :這是數(shù)字;0~3表示還是生的,超過(guò)3表示半生不熟,超過(guò)5表示已經(jīng)烤好了,超過(guò)8表示已經(jīng)烤成木炭了!我們的地瓜開(kāi)始時(shí)時(shí)生的

·cookedString :這是字符串;描述地瓜的生熟程度

·condiments :這是地瓜的配料列表,比如番茄醬、芥末醬等

2.示例方法如下:

·cook():把地瓜烤一段時(shí)間

·addCondiments():給地瓜添加配料

·__init__():設(shè)置默認(rèn)的屬性

·__str__():讓print的結(jié)果看起來(lái)更好一些

3.定義類(lèi),并且定義__init__()方法

#定義`地瓜`類(lèi)

classSweetPotato:

'這是烤地瓜的類(lèi)'

#定義初始化方法

def__init__(self):

self.cookedLevel =0

self.cookedString ="生的"

self.condiments = []

4.添加"烤地瓜"方法

5.完整代碼

3.應(yīng)用:存放家具

1.分析

2.代碼


總結(jié):如果一個(gè)對(duì)象與另外一個(gè)對(duì)象有一定的關(guān)系,那么一個(gè)對(duì)象可用是另外一個(gè)對(duì)象的屬性

4.保護(hù)對(duì)象的屬性

如果有一個(gè)對(duì)象,當(dāng)需要對(duì)其進(jìn)行修改屬性時(shí),有2種方法

·對(duì)象名.屬性名=數(shù)據(jù)---->直接修改

·對(duì)象名.方法名() ---->間接修改

為了更好的保存屬性安全,即不能隨意修改,一般的處理方式為

·將屬性定義為私有屬性

·添加一個(gè)可以調(diào)用的方法,供調(diào)用

運(yùn)行結(jié)果:

總結(jié)

·Python中沒(méi)有像C++中public和private這些關(guān)鍵字來(lái)區(qū)別公有屬性和私有屬性

·它是以屬性命名方式來(lái)區(qū)分,如果在屬性名前面加了2個(gè)下劃線'__',則表明該屬性是私有屬性,否則為公有屬性(方法也是一樣,方法名前面加了2個(gè)下劃線的話表示該方法是私有的,否則為公有的)。

?5.__del__()方法

創(chuàng)建對(duì)象后,python解釋器默認(rèn)調(diào)用__init__()方法;

當(dāng)刪除一個(gè)對(duì)象時(shí),python解釋器也會(huì)默認(rèn)調(diào)用一個(gè)方法,這個(gè)方法為_(kāi)_del__()方法

結(jié)果:

總結(jié):

·當(dāng)有1個(gè)變量保存了對(duì)象的引用時(shí),此對(duì)象的引用計(jì)數(shù)就會(huì)加1

·當(dāng)使用del刪除變量指向的對(duì)象時(shí),如果對(duì)象的引用計(jì)數(shù)不會(huì)1,比如3,那么此時(shí)只會(huì)讓這個(gè)引用計(jì)數(shù)減1,即變?yōu)?,當(dāng)再次調(diào)用del時(shí),變?yōu)?,如果再調(diào)用1次del,此時(shí)會(huì)真的把對(duì)象進(jìn)行刪除

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1.1面向?qū)ο?面向?qū)ο?object-oriented ;簡(jiǎn)稱: OO)至今還沒(méi)有統(tǒng)一的概念 我這里把它定義為:...
    TENG書(shū)閱讀 637評(píng)論 0 0
  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 2,068評(píng)論 0 9
  • 補(bǔ)充:http://www.cnblogs.com/tylerdonet/p/3483836.html在html里...
    Jalon閱讀 569評(píng)論 0 0
  • 微商,怎么理解呢?可以說(shuō)是通過(guò)網(wǎng)絡(luò)進(jìn)行銷(xiāo)售的商人。微商,也可以說(shuō)是通過(guò)這個(gè)行業(yè)獲得利潤(rùn)的商人,微商。不管怎么理解,...
    奧特曼打怪獸啊啊閱讀 363評(píng)論 0 1
  • 好多年沒(méi)有再見(jiàn)的朋友,再見(jiàn)面時(shí),覺(jué)得他們都有一點(diǎn)不同了。 有人有了一雙悲傷的眼睛,有人有了冷酷的嘴角,有人是一臉的...
    My小栗子閱讀 286評(píng)論 0 2

友情鏈接更多精彩內(nèi)容