Objective-C學習筆記(二十八)——對alloc和init的理解
我們在OC中進行物件的初始化的時候,往往會用到兩個方法,就是alloc和init。這到底是兩個什麼方法呢?
(1)在OC專案中新建一個類People.然後在main.m中進行初始化。注意People類是繼承自NSObject的。初始化People物件的程式碼如下:
People *people = [[People alloc] init];
(2)按住Command和滑鼠左鍵,進入alloc方法,可以看到alloc方法的宣告如下:
+ (instancetype)alloc;
同時發現此時是在NSObject.h中,表示alloc方法是一個類方法,我們的People類是繼承自NSObject的,所以在People類中也有這個alloc分配記憶體的方法,並且這是一個類方法。
(3)同時進入init方法,可以發現init方法也是在NSObject.h中宣告的,這個是一個物件方法,所以可以知道我們在使用 People alloc的時候,會返回一個物件,然後這個物件才去呼叫init初始化方法。
- (instancetype)init;
github主頁:https://github.com/chenyufeng1991 。歡迎大家訪問!
相關文章
- (學習筆記)python 對__init__的初步理解筆記Python
- 字元裝置驅動學習之cdev_init和cdev_alloc字元dev
- Zabbixzabbix_proxy指令(學習筆記二十八)筆記
- ElasticSearch學習筆記(二)——對聚合的簡單理解Elasticsearch筆記
- (基於Pytorch的深度學習)筆記1:建立模型用到的類:_init_和self、super(Model, self).__init__()PyTorch深度學習筆記模型
- batch normalization學習理解筆記BATORM筆記
- SQLServer學習筆記 - 主鍵的理解SQLServer筆記
- 學習筆記(二十八):ArkUi-自定義彈窗 (CustomDialog)筆記UI
- Objective-C 記憶體管理之alloc/retain/release/dealloc實現原理Object記憶體AI
- Python零基礎學習筆記(二十八)——異常處理Python筆記
- 由 NSObject *obj = [[NSObject alloc] init] 引發的一二事兒Object
- Python學習筆記|Python之yield理解Python筆記
- Git和Maven的學習筆記GitMaven筆記
- numpy的學習筆記\pandas學習筆記筆記
- 【三】Kubernetes學習筆記-Pod 生命週期與 Init C 介紹筆記
- 【學習筆記】CSS深入理解之margin筆記CSS
- 【學習筆記】CSS深入理解之overflow筆記CSS
- 【學習筆記】CSS深入理解之relative筆記CSS
- Python中__init__的用法和理解Python
- AI學習筆記之——如何理解機器學習(Machine Learning)AI筆記機器學習Mac
- Objective-C中的self和super理解Object
- 對抗樣本學習筆記(一)筆記
- spark學習筆記--RDD鍵對操作Spark筆記
- XML學習筆記(一):關於字元編碼的理解XML筆記字元
- Spring MVC學習筆記和SSH的整合SpringMVC筆記
- 註解和反射學習筆記反射筆記
- Node學習筆記 Mongodb 和 Mongoose筆記MongoDB
- systemtap和火焰圖學習筆記筆記
- this和super的區別和應用 學習筆記筆記
- 飛機的 PHP 學習筆記之面對物件篇PHP筆記物件
- ruby on rails筆記和理解AI筆記
- 線性規劃對偶學習筆記筆記
- C#學習筆記(與Java、C、C++和Python對比)C#筆記JavaC++Python
- OpenCV學習筆記(3)——Scalar資料型別理解OpenCV筆記資料型別
- 【學習筆記】CSS深入理解之vertical-align筆記CSS
- 機器學習入門筆記——如何理解梯度下降機器學習筆記梯度
- LTE-5G學習筆記21--PA,PB引數理解和配置筆記
- Cypress 的學習筆記筆記
- 棧的學習筆記筆記