標籤:
關鍵字介紹
在做iOS開發中,系統的各個關鍵字處處都是,但是未必每一個關鍵字都是那麼的明白,所以羅列出一些關鍵字供大家互相學習,有不完善之處請指正,謝謝
| atomic |
atomic是Objc使用的一種線程保護技術,基本上來講,是防止在寫未完成的時候被另外一個線程讀取,造成資料錯誤。而這種機制是耗費系統資源的,所以在iPhone這種小型裝置上,如果沒有使用多線程間的通訊編程,那麼nonatomic是一個非常好的選擇。 |
| super |
調用父類的方法 |
| readonly |
說明屬性是唯讀,預設的標記是讀寫 |
| readwrite |
說明屬性會被當成讀寫的,這也是預設屬性 |
| retain |
釋放舊的對象,將舊對象的值賦予輸入對象,再提高輸入對象的索引計數為1 |
| self |
是隱藏參數,指向當前調用方法的類 |
| setter |
設定指定的set方法 |
| getter |
設定指定的get方法 |
| property |
設定成員變數的屬性(有讀/寫,賦值assign,retain,copy ,以及對多線程的支援nonatomic) |
| end |
類的標頭檔或者實現檔案的結束 |
| copy |
建立一個索引計數為1的對象,然後釋放舊對象 |
| assign |
簡單賦值,不更改引用計數 |
| synthesize |
根據@property設定,自動產生成員變數相應的存取方法,從而可以使用點操作符來方便的存取該成員變數 |
| import |
告訴前置處理器,將標頭檔的內容包含到本檔案中 |
| dynamic |
告訴編譯器由我們自己來實現存取方法 |
| nonatomic |
非原子性訪問,對屬性賦值的時候不加鎖,多線程並發訪問會提高效能 |
| implementation |
表明類的實現 |
| strong |
強引用,只要最後一個strong型指標不再指向對象,那麼對象就會被釋放,同時所有的weak型指標都將會被清除 |
| weak |
弱引用 |
| __strong |
是預設的關鍵詞 |
| __weak |
聲明了一個可以自動nil化的弱引用 |
| __unsafe_unretained |
聲明一個弱應用,但是不會自動nil化,也就是說,如果所指向的記憶體地區被釋放了,這個指標就是一個野指標了 |
| __autoreleasing |
用來修飾一個函數的參數,這個參數會在函數返回的時候被自動釋放 |
| unsafe_unretained |
弱引用,容易產生野指標,盡量少用unsafe_unretained關鍵字 |
| synchronized |
方法加鎖 |
iOS開發——總結篇&關鍵字介紹