1.方法的本質 1.1 探索 在之前的文章中,我們探索了對象、類、以及isa等的本質,那么今天我們一起來分析一下方法的本質,看看OC所調用的方法究竟是什么 首先進入targe...
1.方法的本質 1.1 探索 在之前的文章中,我們探索了對象、類、以及isa等的本質,那么今天我們一起來分析一下方法的本質,看看OC所調用的方法究竟是什么 首先進入targe...
類的結構和定義 首先跟蹤源碼,找到Class的的定義,發(fā)現其本質為objc_class類型的指針,并且 objc_class繼承自objc_object,其中objc_cla...
1.isa本質 我們知道,oc中的一切類都繼承自NSObject,直接追蹤NSObject可以發(fā)現在objc/NSObject.h文件中對于該類的定義如下 或者在objc源碼...
本文首發(fā)于我的個人博客:「程序員充電站」[https://itcharge.cn]文章鏈接:「傳送門」[https://itcharge.cn/ios-complete-le...
Objective-C 內存管理 在 Objective-C 中,對象通常是使用 alloc 方法在堆上創(chuàng)建的。 [NSObject alloc] 方法會在對堆上分配一塊內存...
關于命名 計算機科學的兩件難事:緩存失效和命名計算機科學的兩件難事:緩存失效和命名 程序員最頭疼的事:命名半數的人認為命名是最頭疼 《Clean Code》和《編寫可讀代碼的...
1.為什么說Objective-C是一門動態(tài)的語言? object-c類的類型和數據變量的類型都是在運行是確定的,而不是在編譯時確定。例如:多態(tài)特性,我們可以使用父類對象來指...
KVO實現原理 KVO基本原理: 1 kvo是基于runtime機制實現的 2 當某個類的屬性對象第一次被觀察時,系統就會在運行期動態(tài)的創(chuàng)建該類的一個派生類,在這個派生類中重...