Runtime系列(category添加屬性)

前言

更確切的說,這篇文章不全是寫如何給分類添加屬性的红淡,甚至不全是寫runtime的队贱,畢竟很多知識都有交叉,姑且算是關(guān)于category的一篇雜文吧住拭。這里給出3種添加category屬性的方法,如果還有其他方法歡迎交流

正文

既然是雜文历帚,還是先引個例子

引例

運行結(jié)果什么情況滔岳?我讀書少你不要騙我。挽牢。按照消息轉(zhuǎn)發(fā)中的理論谱煤,程序不是該crash嗎?但是想想看禽拔,消息轉(zhuǎn)發(fā)是在沒找到實現(xiàn)的情況下才執(zhí)行的刘离,先別急著說沒有+ (void)test的實現(xiàn),再看一次類與元類

NSObject的metalclass的superclass仍然是NSObject
[NSObject test]先到NSObjectmetalclass中尋找+ (void)test沒找到再到metalclasssuperclass中尋找睹栖,顯然可以找到這個家伙硫惕,因為元類的實例方法就是類的對象方法(這里可能有點繞,偷個懶野来,不畫圖了恼除。。)曼氛,既然找到了實現(xiàn)程序自然不會crash也不會執(zhí)行消息轉(zhuǎn)發(fā)

上個例子是給分類添加方法豁辉,下邊說說給分類添加屬性
分類其實是可以添加屬性的,只是不能添加成員變量舀患,同樣可以使用@property徽级,但是只生成gettersetter并且不會自動實現(xiàn),因為不會生成帶下劃線的成員變量聊浅,所以無法作為中間變量進行傳值餐抢,既然如此加個變量傳參就好

變量法
變量法

這里的思想是:缺什么補什么

容器法
容器法

顯然现使,和第一種方式相比,這樣寫很傻X弹澎。當然朴下,這里也可以換成可變數(shù)組來實現(xiàn)。
這里的思想是:偷梁換柱

runtime法
runtime法

這是runtime專為彌補category設(shè)計上不足而準備的解決方案
這里的思想是:多讀書苦蒿,學(xué)無止境
代碼很容易理解殴胧,不再做過多介紹

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市佩迟,隨后出現(xiàn)的幾起案子团滥,更是在濱河造成了極大的恐慌,老刑警劉巖报强,帶你破解...
    沈念sama閱讀 212,080評論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件灸姊,死亡現(xiàn)場離奇詭異,居然都是意外死亡秉溉,警方通過查閱死者的電腦和手機力惯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,422評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來召嘶,“玉大人父晶,你說我怎么就攤上這事∨” “怎么了甲喝?”我有些...
    開封第一講書人閱讀 157,630評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長铛只。 經(jīng)常有香客問我埠胖,道長,這世上最難降的妖魔是什么淳玩? 我笑而不...
    開封第一講書人閱讀 56,554評論 1 284
  • 正文 為了忘掉前任直撤,我火速辦了婚禮,結(jié)果婚禮上凯肋,老公的妹妹穿的比我還像新娘谊惭。我一直安慰自己,他們只是感情好侮东,可當我...
    茶點故事閱讀 65,662評論 6 386
  • 文/花漫 我一把揭開白布圈盔。 她就那樣靜靜地躺著,像睡著了一般悄雅。 火紅的嫁衣襯著肌膚如雪驱敲。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,856評論 1 290
  • 那天宽闲,我揣著相機與錄音众眨,去河邊找鬼握牧。 笑死,一個胖子當著我的面吹牛娩梨,可吹牛的內(nèi)容都是我干的沿腰。 我是一名探鬼主播,決...
    沈念sama閱讀 39,014評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼狈定,長吁一口氣:“原來是場噩夢啊……” “哼颂龙!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起纽什,我...
    開封第一講書人閱讀 37,752評論 0 268
  • 序言:老撾萬榮一對情侶失蹤措嵌,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后芦缰,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體企巢,經(jīng)...
    沈念sama閱讀 44,212評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,541評論 2 327
  • 正文 我和宋清朗相戀三年让蕾,在試婚紗的時候發(fā)現(xiàn)自己被綠了浪规。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,687評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡探孝,死狀恐怖罗丰,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情再姑,我是刑警寧澤,帶...
    沈念sama閱讀 34,347評論 4 331
  • 正文 年R本政府宣布找御,位于F島的核電站元镀,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏霎桅。R本人自食惡果不足惜栖疑,卻給世界環(huán)境...
    茶點故事閱讀 39,973評論 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望滔驶。 院中可真熱鬧遇革,春花似錦、人聲如沸揭糕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,777評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽著角。三九已至揪漩,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間吏口,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,006評論 1 266
  • 我被黑心中介騙來泰國打工壮韭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留北滥,地道東北人。 一個月前我還...
    沈念sama閱讀 46,406評論 2 360
  • 正文 我出身青樓蜀细,卻偏偏與公主長得像,于是被迫代替她去往敵國和親戈盈。 傳聞我的和親對象是個殘疾皇子奠衔,可洞房花燭夜當晚...
    茶點故事閱讀 43,576評論 2 349

推薦閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,690評論 0 9
  • 這篇文章完全是基于南峰子老師博客的轉(zhuǎn)載 這篇文章完全是基于南峰子老師博客的轉(zhuǎn)載 這篇文章完全是基于南峰子老師博客的...
    西木閱讀 30,548評論 33 466
  • 對于從事 iOS 開發(fā)人員來說奕谭,所有的人都會答出【runtime 是運行時】什么情況下用runtime?大部分人能...
    夢夜繁星閱讀 3,700評論 7 64
  • 我有一千個孩子 他們散落在四方 每臨深夜 他們便會回來找我 向我訴說 他們所看到的這個世界 他們哭著 笑著 笑著 ...
    倫小讓閱讀 166評論 0 1
  • 早上在準備培訓(xùn)的課件涣觉,想著萬人迷昨夜喝酒不知喝到幾分,思緒忽然跳躍血柳。 這次好久沒有想起李靖官册,也好久沒想念師父,因跳...
    行一館閱讀 231評論 0 0