Day14總結(jié)-2019/08/08

一、思維的轉(zhuǎn)變

盡量習(xí)慣用面向?qū)ο缶幊蹋侯惡蛯ο蟆?/p>

二、類和對象

1.概念

類就是擁有相同屬性、相同功能的對象的集合(抽象的)。
對象就是類的實例(具體的)。

2.類的說明:確定他的屬性和功能

1.語法:

class 類名:
類的說明文檔
類的內(nèi)容

2.聲明對象:對象 = 類()

3.對象方法

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

a.聲明:直接聲明(聲明前不需要加任何裝飾器)在類中的函數(shù)就是對象方法。
b.特點:自帶self參數(shù);用對象調(diào)用對象方法的時候self不用傳參,系統(tǒng)會自動將當(dāng)前對象傳給self。
c.調(diào)用:以'對象.對象方法()'的形式來調(diào)用 。

4.構(gòu)造方法

1.構(gòu)造函數(shù) - 函數(shù)名和類名一樣,用來創(chuàng)建類的對象的函數(shù)。
python中聲明類的時候,系統(tǒng)會自動為這個類創(chuàng)建一個構(gòu)造函數(shù),函數(shù)的作用是創(chuàng)建對象。
構(gòu)造方法的執(zhí)行過程:a.在內(nèi)存中開辟空間創(chuàng)建對象 b.用創(chuàng)建好的對象去調(diào)用init方法 c.返回對象在內(nèi)存中的地址。

2.init方法
聲明在類中用來對對象進行初始化的方法;(當(dāng)對象一創(chuàng)建出來,這個方法就會被自動調(diào)用)。
注意:創(chuàng)建對象的時候構(gòu)造方法需不需要傳參,需要傳幾個參數(shù),看這個類的init方法。

5.屬性

1.類中的屬性
屬性就是聲明在類中的變量
類中的屬性分為:字段和對象屬性

字段

a.聲明:聲明在類的里面函數(shù)的外面的變量就是字段
b.使用:通過類去使用(以'類.字段'的形式使用)
c.什么時候用:屬性的值不會因為對象不同而不同,這樣的屬性就聲明成類的字段

對象屬性(重要)

a.怎么聲明:以'self.屬性值=值'的形式聲明在init方法中
b.怎么使用:通過對象去使用,
c.什么時候用:屬性的值可能會因為對象不同而不一樣,這樣的屬性就聲明成對象屬性

class Student:
    def __init__(self):
        # 這兒的name、age、gender、id就是對象屬性
        self.name = '小明'
        self.age = 23
        self.gender = '男'
        self.id = 'stu001'

6.對象屬性的增刪改查

1.查

方法一:對象.屬性
方法二:getattr(對象, 屬性值:str)/getattr(對象, 屬性值:str,, 默認值

2.增、改:屬性存在就修改,屬性不存在就增加

方法一:對象.屬性 = 值
方法二:setattr(對象,屬性名, 值)
3.刪
方法一:del 對象.屬性名
方法二:delattr(對象,屬性名)

4.slots函數(shù)
通過給slots字段賦值來約束當(dāng)前類的對象有哪些對象屬性。

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

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

  • 這是16年5月份編輯的一份比較雜亂適合自己觀看的學(xué)習(xí)記錄文檔,今天18年5月份再次想寫文章,發(fā)現(xiàn)簡書還為我保存起的...
    Jenaral閱讀 3,186評論 2 9
  • 1.面向?qū)ο蠡A(chǔ) 類:就是擁有相同的屬性,相同功能的集合(抽象的)對象:就是類的實例(具體的)例如:如果人是一個類...
    HuangXiongjin閱讀 111評論 0 0
  • Swift1> Swift和OC的區(qū)別1.1> Swift沒有地址/指針的概念1.2> 泛型1.3> 類型嚴(yán)謹 對...
    cosWriter閱讀 11,697評論 1 32
  • 一:java概述:1,JDK:Java Development Kit,java的開發(fā)和運行環(huán)境,java的開發(fā)工...
    ZaneInTheSun閱讀 2,826評論 0 11
  • 整理來自互聯(lián)網(wǎng) 1,JDK:Java Development Kit,java的開發(fā)和運行環(huán)境,java的開發(fā)工具...
    Ncompass閱讀 1,627評論 0 6

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