在宣告屬性時,系統會自動合成這倆個方法。
而我們知道宣告屬性會有加關鍵字,這些個關鍵字的作用就是幫助系統合成你要的set或get方法
用property宣告的成員變數是乙個屬性,這個屬性是已經自己生成了例項變數,我們可以直接用下劃線訪問,而不走set或get方法(所以不會出發kvo)。
在自定義set和get方法時,如果同時自定義,那麼這個property就失效了,它不會自動生成例項變數,需要重新用@synthesize合成方法。
在這裡,name這個屬性報錯沒有宣告。這句話實際上和typedefine差不多,就是現在_name已經不存在了,我們自己將name這屬性的名字改為_name,是為了方便識別這是屬性。
合成方法之後報錯消失。
點語法是指用 self.來呼叫屬性,實際上我們呼叫的是get方法。
self.屬性 = self.其他屬性。
等號 左邊呼叫的是set方法 右邊呼叫的是get方法。
在我們自定義自己的初始化方法時,首先要保證方法內容和屬性關鍵字相符合。
箭頭是用來訪問成員變數的,點語法是用來訪問物件的,所以->不走set方法。
iOS點方法使用
點方法的含義 點方法是指通過物件.成員變數名的形式進行對變數的訪問 點方法本質是get和set方法 property這個關鍵字是生成,就是get和set方法的宣告和實現 接下來展示一下點方法的使用,以職員年齡為例 stuff.h inte ce stuff nsobject 生成方法 set方法 v...
iOS 自定義Set方法,注意點
之前一直以為set方法就是為了,讓外部呼叫提供外部介面用的,不過在最近沃爾瑪專案中,我發現我錯了,我錯得特別離譜,以至於不仔細看我都被蒙過去了。首先我們明確一點set方法,如果我們不自定義set方法,那麼我們屬性會自動實現set和get方法而且注意而且會生成例項變數 like property no...
IOS關於SELF點的一些事情
主要參考文章 橙色字型為自己標註的的內容,方便加深印象 iphone開發 self的用法 關於什麼時間用self.其實是和obj c的訪問方法有關,不過網上很多人也都這麼解答的,那它為什麼和訪問方法有關?怎麼有關的?並沒有多少人回答出來.同時關於記憶體管理的內容,請大家看旺財勇士的objective...