類方法和例項方法區別

2022-04-06 12:33:22 字數 677 閱讀 8564

1.類方法和例項方法

類方法:不需要宣告乙個物件(例項),就可以直接引用。通常是有返回值的(否則類方法就無意義了,因為沒有物件或者相應的成員變數的值可以設定)

類方法的特點:

1.宣告和實現的時候,以(+)開頭

2.類方法屬於類的本身,只能通過類名呼叫

3.類方法不能直接訪問成員變數

4.類方法不能直接呼叫物件方法(可以間接呼叫)    // 間接呼叫:1> 把物件當做形參傳入    2> 在類方法中建立乙個物件

例如:+ (instancetype)personwithname:(char *)name age:(int)age;

例項方法:物件方法。(例如,學生是乙個物件,學習就是乙個物件方法)

類方法的特點:          

(1)宣告和實現的時候,以(-)開頭

(2)物件方法隸屬於物件,只能通過物件呼叫

(3)物件方法可以直接訪問成員變數

(4)物件方法可以呼叫其他的物件方法以及類方法

例如:  - (void)setage:(int)age;       - (int)age;        - (void)method;

類方法的好處:

呼叫類方法的時候,不用建立物件,更節省記憶體,呼叫比較簡單,效率高。

什麼時候使用類方法?        答:當不需要訪問成員變數的時候

例項方法和類方法的區別

類中的方法可以分為 1.類方法 加關鍵字static修飾的是類方法,也稱為靜態方法 當類的位元組碼檔案被載入到記憶體時,類的例項方法不會被分配入口位址,只有該類建立物件後,類中的例項方法才分配入口位址,從而例項方法可以被建立的任何物件呼叫執行。需要注意的是,當我們建立第乙個物件時,類中的例項方法就分...

python 例項方法 靜態方法和類方法區別

一 python 類語法中有三種方法,例項方法,靜態方法,類方法 python中self,cls的區別 普通例項方法,第乙個引數需要是self,它表示乙個具體的例項本身。如果用了staticmethod,那麼就可以無視這個self,而將這個方法當成乙個普通的函式使用。而對於classmethod,它...

類方法和例項方法?

筆試中遇到都最最基礎的問題,我竟然有點懵了。首先沒弄清楚什麼是類方法,什麼是例項方法,現在就做乙個總結。類中的方法分為類方法和例項方法。類方法 類中用 static 修飾的方法。例項方法 也稱為物件方法,除了類方法都是例項方法。類方法在類被 jvm 虛擬機器載入進記憶體的時候就會為其分配入口位址,例...