1. 程式人生 > >day16類成員

day16類成員

類成員
1.例項方法
物件.方法
2.類方法
@classmethod
類名.方法
3.靜態方法
@staticmethod
類名.方法

4. @property 可以把一個方法變成一個屬性
1. 函式只能有一個self引數.
2. 需要有返回值
3. 不能賦值
4. 呼叫的時候, 我們不需要寫括號. 直接當成屬性變數來⽤就可以了

class Person:
country="中國"
def __init__(self,name,brithday,qq):
#例項變數. 給物件賦值
self.name=name
self.brithday=brithday
self.qq=qq
def chi(self):
print("走,吃去")

@classmethod #申明類方法
def he(cls):
print("喝飲料")

@staticmethod #申明靜態方法,相當於在類中定義的一個普通函式
def shui():
print("睡")

@property #把方法變屬性

def age(self):
return 2018-self.brithday

p1=Person()
Person.country="China" # 類變數的修改只能通過類名來完成
p1.email=1970664132 新增例項變數-> 欄位 -> 屬性(java)
p1.chi() #物件.方法
Person.he() #類名.方法 不管用物件還是用類去訪問類方法. 預設傳遞進去的是類
Person.shui() #類名.方法
print(p1.age)
class Person:
    def __init__(self, name): # 構造, 建立物件的時候自動呼叫
        self.__name = name # 私有的
        print("這裡是構造方法")

    def init(self):
        print("例項方法")

    def __chi(self): # 私有的
        print("我要吃. 瘋狂的吃")

    def he(self):
        self.__chi() # 內部呼叫
        print("我是喝", self.__name
) p = Person("孫藝珍") p.he() # # p.__init__() # 很蠢 # p.init() # print(p.__name)
私有