python-06面向?qū)ο?03類的定義_類和對象的關(guān)系

1.類和對象

我們把對象比作一個“餅干”,類就是制作這個餅干的“模具”。

餅干模具

我們通過類定義不同數(shù)據(jù)類型的屬性(數(shù)據(jù))和方法(行為),也就是說,“類將行為和狀態(tài)(數(shù)據(jù))打包在一起”。

對象模型

對象是類的具體實例,一般稱為“類的實例”。類看做“餅干模具”,對象就是根據(jù)這個“模具”,制造出來的“餅干”。

從一個類創(chuàng)建對象時,每個對象會共享這個類的行為(類中定義的方法),但會有自己的屬性值(不共享狀態(tài))。更具體一點:“方法代碼是共享的,屬性數(shù)據(jù)不共享”。


對象模型

Python中,“一切皆對象”.類也稱為“類對象”, 類的實例也稱為“實例對象”。

2.類與對象的定義

2.1 類的定義

class 類名:
    類體

2.2 對象的定義

    # 方式1
    對象名 = 類名()
    
    # 方式2
    對象名 = 類名(參數(shù)1, 參數(shù)2, ...參數(shù)n)

注意:

在python中實例化對象的時候,不需要關(guān)鍵字new,這個和一般面向?qū)ο蟮恼Z言不太一樣。

3.注意事項

要點如下:

  1. 類名必須符合“標識符”的規(guī)則(字母、數(shù)字、下劃線組成,首字母不為數(shù)字)。一般規(guī)定,首字母大寫,多個單詞使用“駝峰原則”。
  2. 類體中我們可以定義屬性和方法。
  3. 屬性用來描述數(shù)據(jù),方法(即函數(shù))用來描述這些數(shù)據(jù)相關(guān)的操作。

4.具體案例

# 定義類
class Student:
    count = 0                                           # 類屬性
    
    def __init__(self, name, age):
        '''
        初始化方法
        注意:self參數(shù)固定放在起始位置,變量名可以是其他,但一般使用self
        '''
        self.name = name                                # 實例屬性
        self.age = age
        Student.count = Student.count + 1
    
    def say_age(self):                                  # 實例方法
        print(self.name + "的年齡是" + str(self.age))
    
s1 = Student("聶發(fā)俊", 100)            # 實際上執(zhí)行了兩個方法
s1.say_age()

執(zhí)行結(jié)果:

聶發(fā)俊的年齡是100

備注:
更多精彩博客,請訪問:聶發(fā)俊的技術(shù)博客
對應視頻教程,請訪問:python400
完整markdown筆記,請訪問: python400_learn_github

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

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

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