在前面的內(nèi)容中储耐,主要是介紹了Runtime所使用到的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)和消息轉(zhuǎn)發(fā)的流程蝶缀。接下來(lái)將會(huì)介紹如何在運(yùn)行時(shí)對(duì)代碼進(jìn)行動(dòng)態(tài)的修改蜀涨。這一節(jié)主要介紹添加即寡。添加包括兩類: 對(duì)所有的...
在前面的內(nèi)容中储耐,主要是介紹了Runtime所使用到的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)和消息轉(zhuǎn)發(fā)的流程蝶缀。接下來(lái)將會(huì)介紹如何在運(yùn)行時(shí)對(duì)代碼進(jìn)行動(dòng)態(tài)的修改蜀涨。這一節(jié)主要介紹添加即寡。添加包括兩類: 對(duì)所有的...
在上一節(jié)消息分發(fā)中砌梆,使用到了NSMethodSignature和NSInvocation鼠锈。這一節(jié)來(lái)看下這兩者是干什么用的岭粤,如何來(lái)使用。 NSMethodSignature 從...
上一節(jié)在描述Method數(shù)據(jù)結(jié)構(gòu)時(shí)派昧,區(qū)分了SEL和IMP黔姜。知道了在OC中是通過(guò)發(fā)送消息來(lái)執(zhí)行代碼的。消息發(fā)送的流程也只有兩步: 通過(guò)SEL查找IMP蒂萎。 執(zhí)行IMP秆吵。 那么SE...
在Runtime初識(shí)中,我們知曉了Runtime所能夠提供的功能五慈。那么Runtime為什么能夠提供這樣的功能呢纳寂?這就需要從消息分發(fā)機(jī)制說(shuō)起。為了能夠了解消息分發(fā)泻拦,首先從數(shù)據(jù)結(jié)...
Runtime是什么 簡(jiǎn)單的說(shuō)毙芜,Runtime的內(nèi)容包括兩個(gè)部分:1.消息分發(fā)。2.在運(yùn)行時(shí)對(duì)代碼進(jìn)行動(dòng)態(tài)的修改争拐。 消息分發(fā)放到后面介紹∫钢啵現(xiàn)在介紹對(duì)代碼的動(dòng)態(tài)修改。在日常的開(kāi)...