2010-02-12 40 views
2

我希望我沒有在ObjC手冊中跳過此部分,但可以從其類方法之一中引用類嗎? 就像在PHP中一樣,你會使用「this」來引用當前實例,而「self」是指實例的類,「this」的ObjC等價物將是「self」,那麼什麼是ObjC等價於PHP的「self 「,如果有的話?從目標C中的類mehod中引用類本身C

回答

6

方法中,self引用當前類(類的Class對象)。在實例方法中,self引用該類的當前實例。

+0

+1這是正確的答案。 – 2010-02-12 21:39:14

+0

非常感謝,這正是我需要的信息(在運行時參考中明顯錯過了)。 – karsten 2010-02-23 19:36:35

3

如果self是對象的實例,則可以使用[self class]獲取對象的類。

+0

-1他問的是類方法,而不是實例方法。 – 2010-02-12 21:39:34

1

每個Objective-C方法都隱式獲取兩個參數:self_cmd。在裏面的任何方法中,self是調用該方法的消息的接收者,除非你給它分配一個不同的值。在類方法中,接收者是一個類。在實例方法中,接收者是一個實例。