class a():
num=10
def hehe(self):
print("我是例項方法(也叫物件方法)")
@classmethod
def haha(cls):
print("我是類方法,我的第乙個引數代表的是類,例如本例是a",cls.num)
@staticmethod
def heihei():
print("我是靜態方法,我跟這個類沒有太大關係")
a=a()
a.hehe()
a.haha()#物件(例項)訪問了類方法,沒出問題,因為傳進去的引數雖然是物件,但是指定它屬於那個類
a.heihei()
a.hehe(1)#用類名訪問物件方法,第乙個引數如果傳過來物件是可以執行的
結果:
我是例項方法(也叫物件方法)
我是類方法,我的第乙個引數代表的是類,例如本例是a 10
我是靜態方法,我跟這個類沒有太大關係
我是例項方法(也叫物件方法)
類方法和例項方法?
筆試中遇到都最最基礎的問題,我竟然有點懵了。首先沒弄清楚什麼是類方法,什麼是例項方法,現在就做乙個總結。類中的方法分為類方法和例項方法。類方法 類中用 static 修飾的方法。例項方法 也稱為物件方法,除了類方法都是例項方法。類方法在類被 jvm 虛擬機器載入進記憶體的時候就會為其分配入口位址,例...
物件方法和類方法
1.物件方法 1 減號 開頭 2 只能由物件呼叫 3 物件方法中可以訪問成員變數 例項變數 4 物件方法中可以呼叫類方法 2.類方法 1 加號 開頭 2 只能由類名呼叫 3 類方法中不可以訪問成員變數 例項變數 4 類方法中不可以呼叫物件方法 5 類方法中可以呼叫類的方法 同名的除外 3.允許有同名...
類方法和物件方法
我們就把適用於某一特定物件的方法叫做例項 方法,而把那些適用於整個類的方法叫做類方法。不過這樣做只是為了方便 對於 perl 而言,方法就是方法,只是由其第乙個引數的型別來區分。第乙個引數傳遞的是類,則叫做類方法 類裡面那些生成物件例項的方法叫構造方法,這些通常是類方法 node1 root per...