01什麼是物件導向,物件導向的基本操作

來源:互聯網
上載者:User

標籤:hit   dict   建立   anim   個人   進階   --   def   通過   

1.0---物件導向的概念
.
類: 具有相同屬性和技能的一類事物; (人類就可以作包含了多個 對象(人)的 )
對象: 具體類的表現,具體到個體,實實在在的一個執行個體; (高小波是一個人,就是人類中實實在在的個體)

為什麼要學習類,對象: 可以將代碼形成一個個代碼塊,這些代碼塊可以進行相互間的操作(類間的繼承,對象對類的操作),有利於代碼的規範和引用
.
2.0---類的格式
.
類體: 包括倆部分 變數部分(靜態變數) ,方法(函數)部分(普通函數,構造方法)

class Person:           #  Person 類名    name=‘有名字‘             #  靜態變數,(也叫靜態欄位)    animal=‘進階動物‘    faith=‘有信仰‘    def work(self):            #  方法(函數)        print(‘有沒有工作‘)    def house(self):        print(self)        print(‘有沒有房子‘)

.
3.0---物件導向的操作
.
對類的操作可以從倆個角度來講:通過類名對類進行操作,通過對象對類進行操作
從類名的角度:
.
a.-- dict
Person.dict 操作 查詢類中的所有內容;不能進行增刪改操作
b.--萬能的 . (可實現增刪改查)

print(Person.name)   # 查Person.age=25    # 增     在類的函數中也可以操作Person.name=‘高波‘    # 改del Person.animal        # 刪操作類中的方法(在工作中基本不用)Person.work(11)

.
從對象的角度

class Person:    name=‘有名字‘ #  靜態變數,或者是靜態欄位    animal=‘進階動物‘    faith=‘有信仰‘    def __init__(self,name,age,sex,hobby):     #  構造方法(每個類都要有構造方法)        self.name=name        self.age=age        self.sex=sex        self.hobby=hobby      # 給對象封裝相應的屬性(變數,可控);    def work(self):        print(‘有沒有工作‘)    def house(self):        print(self)        print(‘有沒有房子‘)

ret=Person(‘高波‘,25,‘boy‘,‘不知道‘)
預設將Person的空間地址傳給self,其他得參數會依次傳入
#1, 類名+()產生一個執行個體(對象,對象空間.)
#2, 自動執行類中的init方法,將對象空間傳給init的self參數,
#3, 給對象封裝相應的屬性(變數). 可控的

自動執行類中的init方法,將對象空間傳給init的self參數,
Person() # 類名+() 的這個過程:執行個體化的過程(建立一個對象的過程)
Person() 執行個體化對象,執行個體,對象

a.--操作對象中的靜態變數
1.0 dict 查詢對象中的所有內容
2.0 萬能的 .

print(ret.name)ret.hith=1.68del ret.hobbyret.name=‘高小波‘ print(ret.__dict__)

b.--對象操作類中的靜態變數

print(ret.name) # 如果對象中有就會先查詢對象中的,沒有的得話,向上一步查詢類中的
print(ret.faith)
c.--對象操作類中的方法 (工作中,通過對象)
ret.work()
ret.house()

01什麼是物件導向,物件導向的基本操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.