day15總結

1.私有化 -

讓屬性和方法只能在類的內(nèi)部使用硫眯,不能在類的外部使用
注意: 本質(zhì)上,python中所有的屬性和方法都是公開择同,在類的外部可以使用也可以被繼承两入。

1)語法:
聲明屬性或者方法的時候,在屬性名或者方法名前加'__'

2)python私有化的原理
python并不能像java一樣從訪問權限上去限制屬性和方法敲才,沒有真正的私有屬性和方法裹纳。
私有化只是在兩個下劃線開頭的名字前加前綴'_類名',導致不能直接通過原名進行訪問

2.對象屬性的保護

不要直接訪問或者修改對象屬性的值择葡,而是通過屬性訪問器(getter)和修改器(setter)去操作對象屬性

需要添加getter或者setter的對象屬性,屬性命名的時候需要在最前面加'_'痊夭。
(添加'_'的目的是為了告訴使用者刁岸,這個屬性我給它添加了getter或者setter)

1)getter - 獲取屬性的值(間接)
a.語法:
@property
def 函數(shù)名(self):
其他語句
return 屬性值

b.說明:
函數(shù)名 - 對應的屬性名去掉下劃線
屬性值 - 和對應的有下劃線的屬性值有關聯(lián)

c.什么時候用
如果希望在獲取某個屬性的值之前干點別的事情,就給這個屬性添加getter

2)setter - 給屬性賦值(間接)
想要添加setter必須先添加getter
a.語法:
@getter名.setter
def 函數(shù)名(self, 參數(shù)):
其他語句
self.屬性 = 值

c.什么時候用
如果在給屬性賦值之前干點兒別的事情她我,就給這個屬性添加setter

3.類中的方法: 對象方法虹曙、類方法、靜態(tài)方法

1)對象方法
a.怎么聲明: 直接聲明在類中
b.特點: 有默認參數(shù)self番舆;調(diào)用的時候不用傳參酝碳,指向當前對象
c.怎么調(diào)用: 通過對象來調(diào)用(對象.對象方法())
d.什么時候使用: 如果實現(xiàn)函數(shù)的功能,需要使用對象屬性恨狈,就用對象方法

2)類方法
a.怎么聲明: 聲明函數(shù)前添加@classmethod裝飾器
b.特點: 有默認參數(shù)cls; 調(diào)用的時候不用傳參, 系統(tǒng)將調(diào)用這個方法的類傳給它疏哗,指向當前類
c.怎么調(diào)用: 通過類來調(diào)用
d.什么時候使用: 在不需要對象屬性的前提下,需要類的字段禾怠,就使用類方法

3)靜態(tài)方法
a.怎么聲明:聲明前添加@staticmethod裝飾器
b.特點: 沒有默認參數(shù)
c.怎么調(diào)用: 通過類來調(diào)用
d.什么時候使用: 既不需要對象屬性也不需要類的字段返奉,就使用靜態(tài)方法

4.繼承

繼承者 - 子類
被繼承者 - 父類
繼承 - 讓子類直接擁有父類的屬性和方法

1)語法:
class 類名(父類):
類的內(nèi)容

5.在子類中添加內(nèi)容

1)在子類中添加字段和方法
直接在子類中聲明新的字段和方法
2)添加對象屬性
在子類中實現(xiàn)init方法,并且添加新屬性吗氏。同時需要通過super().init()去調(diào)用父類的init方法

補充: 類中的函數(shù)的調(diào)用過程
先看當前類中是否有這個方法芽偏,如果有直接調(diào)用自己的方法;沒有就去看父類有沒有這個方法弦讽,如果有就調(diào)用父類的方法污尉;
如果父類也沒有就找父類的父類,以此類推, 如果直到找到object都沒有找到這個方法往产,才報錯被碗!

python中所有的類默認都是繼承object, object是python中所有類的基類

6.重寫

在子類中重新實現(xiàn)父類的函數(shù); 可以通過super()去調(diào)用父類中的方法仿村。
注意: super()不能在靜態(tài)方法中使用锐朴,只能在對象方法和類方法中用

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市蔼囊,隨后出現(xiàn)的幾起案子包颁,更是在濱河造成了極大的恐慌,老刑警劉巖压真,帶你破解...
    沈念sama閱讀 222,729評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異蘑险,居然都是意外死亡滴肿,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,226評論 3 399
  • 文/潘曉璐 我一進店門佃迄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來泼差,“玉大人贵少,你說我怎么就攤上這事《言担” “怎么了滔灶?”我有些...
    開封第一講書人閱讀 169,461評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長吼肥。 經(jīng)常有香客問我录平,道長,這世上最難降的妖魔是什么缀皱? 我笑而不...
    開封第一講書人閱讀 60,135評論 1 300
  • 正文 為了忘掉前任斗这,我火速辦了婚禮,結果婚禮上啤斗,老公的妹妹穿的比我還像新娘表箭。我一直安慰自己,他們只是感情好钮莲,可當我...
    茶點故事閱讀 69,130評論 6 398
  • 文/花漫 我一把揭開白布免钻。 她就那樣靜靜地躺著,像睡著了一般崔拥。 火紅的嫁衣襯著肌膚如雪极舔。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,736評論 1 312
  • 那天握童,我揣著相機與錄音姆怪,去河邊找鬼。 笑死澡绩,一個胖子當著我的面吹牛稽揭,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播肥卡,決...
    沈念sama閱讀 41,179評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼溪掀,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了步鉴?” 一聲冷哼從身側響起揪胃,我...
    開封第一講書人閱讀 40,124評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎氛琢,沒想到半個月后喊递,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,657評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡阳似,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,723評論 3 342
  • 正文 我和宋清朗相戀三年骚勘,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,872評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡俏讹,死狀恐怖当宴,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情泽疆,我是刑警寧澤户矢,帶...
    沈念sama閱讀 36,533評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站殉疼,受9級特大地震影響梯浪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜株依,卻給世界環(huán)境...
    茶點故事閱讀 42,213評論 3 336
  • 文/蒙蒙 一驱证、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧恋腕,春花似錦抹锄、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,700評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至哈肖,卻和暖如春吻育,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背淤井。 一陣腳步聲響...
    開封第一講書人閱讀 33,819評論 1 274
  • 我被黑心中介騙來泰國打工布疼, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人币狠。 一個月前我還...
    沈念sama閱讀 49,304評論 3 379
  • 正文 我出身青樓游两,卻偏偏與公主長得像,于是被迫代替她去往敵國和親漩绵。 傳聞我的和親對象是個殘疾皇子贱案,可洞房花燭夜當晚...
    茶點故事閱讀 45,876評論 2 361

推薦閱讀更多精彩內(nèi)容

  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴謹 對...
    cosWriter閱讀 11,113評論 1 32
  • 什么是類,什么是對象類就是擁有相同功能相同屬性的對象的集合 抽象的概念對象是類的實例 類的聲明class 類名:...
    小逗比的奮斗史閱讀 139評論 0 0
  • 這是16年5月份編輯的一份比較雜亂適合自己觀看的學習記錄文檔止吐,今天18年5月份再次想寫文章宝踪,發(fā)現(xiàn)簡書還為我保存起的...
    Jenaral閱讀 2,771評論 2 9
  • 1.私有化 讓屬性和方法只能在類的內(nèi)部使用,不能在類的外部使用 1)語法: 聲明屬性或者方法的時候碍扔,在屬性名或者方...
    藍色骨頭_3f91閱讀 161評論 0 0
  • 一瘩燥、屬性: 本質(zhì)上,python中所有的屬性和方法都是公開的不同,在類的外部可以使用也可以被繼承 1.私有化 讓屬性和...
    墨2019418閱讀 285評論 0 0