靜態屬性

张继文發表於2024-07-26
  1. 什麼是靜態屬性
    靜態屬性property
    在類的函式屬性前加@property可以讓該函式以資料屬性的方式呼叫.

注意:
1. 靜態屬性不可傳引數,(只有self)
2.類的例項預設無法修改靜態屬性
3.如果想對例項修改,呼叫靜態屬性做限制,可以用setter, getter, deleter,等裝飾器

點選檢視程式碼
    class Room:
        def __init__(self, name_in, owner_in, width_in, length_in, heigh_in):
            self.name = name_in
            self.owner = owner_in
            self.width = width_in
            self.length = length_in
            self.heigh = heigh_in

        @property  # 將函式cal_area變成cal_area()
        def cal_area(self):
            print('%s 住的 %s 總面積是%s' % (self.owner, self.name, self.width * self.length))
            return self.width * self.length

    room01 = Room('HOME', 'ZJW', 100, 10, 800)
    room02 = Room('HOME', 'HJ', 1, 1, 8)
    # Room01.cal_area             #這裡可以執行函式了
    print(room01.cal_area)  # 這裡列印的是返回值

相關文章