python編程基礎15-類與對象

# @remark:類與對象
""""""
"""一、類的定義
class 關鍵字

class 類名(父類名):
    '''類的幫組信息'''
    屬性:類中方法外定義的變量,名稱或形容詞,實例的狀態或者數據
    方法:類體中定義的函數,與函數一致,可以有參數列表和返回值。動詞
"""

#1、實例
#類的聲明  不傳則默認父類是超類object
class Human:
    """人類"""
    #定義屬性(類屬性)
    message="這是類屬性"

    #構造方法 -自動執行,直接返回該類的實例,如果不行則默認創建一個構造方法
    def __init__(self,name,age):
        # 實例屬性(變量)
        self.name=name  #通過self綁定到自身
        self.age=age
        print("這是構造方法")
print(Human.message) #這是類屬性

"""二、類的方法
1)實例方法
    -構造方法
2)類方法
3)靜態方法"""

"""三、構造方法與實例化
作用:實例化對象
語法:def __init__(self,參數列表)
訪問:類名(參數列表)"""
#實例化對象
person=Human("yanfa",18) #這是構造方法

#通過實例訪問類屬性
print(person.message) #這是類屬性
#通過實例訪問實例屬性
print(person.name) #yanfa
print(person.age) #18

"""四、實例方法
作用:提供每個類的實例共享的方法
語法:def 方法名(self,參數列表)
訪問:實例.方法名(參數列表)"""
# @remark:實例方法
class Human:
    # 實例方法
    def study(self,course):
        print(f"正在學習{course}")

person=Human()
person.study("python") #正在學習python


"""五、類方法
作用:可以操作類的詳細信息,不需要實例化
語法:@classmethod
訪問:類名.類方法名(參數列表)"""
# @remark:類方法
class Human:
    # 類屬性
    pop = 0

    # 類方法 可以操作類的詳細信息
    @classmethod  # 只能用這個裝飾器
    def born(cls):  # cls是class的簡寫,是指類名本身
        print("這是類方法")
        cls.pop += 1


# 通過類名訪問類方法
Human.born()  # 這是類方法
print(Human.pop)  # 1


"""六、靜態方法
作用:不需要實例化對象
語法:@staticmethod
訪問:類名.靜態方法名()"""
# @remark:靜態方法
class Human:
    # 定義靜態方法
    @staticmethod
    def grow_up():
        print("這是靜態方法")

#訪問靜態方法
Human.grow_up() #這是靜態方法

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容