我們都知道dyld在runtime初始化的時(shí)候注冊(cè)了三個(gè)回調(diào)其中有一個(gè)load_images,他就是用來(lái)做load收集以及調(diào)用的當(dāng)我們的程序啟動(dòng)...
投稿
我們都知道dyld在runtime初始化的時(shí)候注冊(cè)了三個(gè)回調(diào)其中有一個(gè)load_images,他就是用來(lái)做load收集以及調(diào)用的當(dāng)我們的程序啟動(dòng)...
1. weak關(guān)鍵字 用weak關(guān)鍵字修飾的對(duì)象指針是弱引用,被引用對(duì)象的引用計(jì)數(shù)不會(huì)+1,并在引用對(duì)象被釋放的時(shí)候自動(dòng)被設(shè)置為nil。通常用于...
背景: 在大型項(xiàng)目,企業(yè)級(jí)開(kāi)發(fā)中多人同時(shí)維護(hù)同一個(gè)類,這樣勢(shì)必會(huì)導(dǎo)致當(dāng)前類隨著項(xiàng)目開(kāi)展,變得臃腫,iOS中的分類(Category)就很好的解決...
在 iOS 開(kāi)發(fā)中,我們可能會(huì)使用 Runtime 來(lái)解決問(wèn)題,當(dāng)然我們可能都接觸過(guò) Runtime,有的小伙伴已經(jīng)很熟悉了,有的小伙伴也可能不...
1、Runtime是什么? Runtime是一套API,有C C++ 匯編寫成,為OC語(yǔ)言加入了面向?qū)ο蠛瓦\(yùn)行時(shí)功能。運(yùn)行時(shí)(Runtime)是...
本文主要通過(guò)OC的源碼剖析了與Category相關(guān)的原理。其中包括了Category的運(yùn)行時(shí)方法屬性管理、load方法原理、initialize...
super的本質(zhì) Runtime-Demo 首先來(lái)看一道面試題。 下列代碼中Person繼承自NSObject,Student繼承自Person...
Class的結(jié)構(gòu) 通過(guò)上一章中對(duì)isa本質(zhì)結(jié)構(gòu)有了新的認(rèn)識(shí),今天來(lái)回顧C(jī)lass的結(jié)構(gòu),重新認(rèn)識(shí)Class內(nèi)部結(jié)構(gòu)。 首先來(lái)看一下Class的內(nèi)...
1. cache的結(jié)構(gòu) 我們之前探索過(guò)Class的結(jié)構(gòu)以及其內(nèi)部的成員,其中了解到了isa,superClass以及bits的作用,但是剩下的c...
C 靜態(tài): 系統(tǒng)的C函數(shù)存在著動(dòng)態(tài)的部分??!,本來(lái)C語(yǔ)言是靜態(tài)的所以fishHook是無(wú)法Hook的,但是由于系統(tǒng)的C函數(shù)存在著動(dòng)態(tài)的部分,所以...