self.propertyName和_propertyName的區(qū)別

使用@property 聲明一個(gè)屬性變量,我們可以通過(guò)self.和_對(duì)其進(jìn)行訪問(wèn),那么這兩者之間有什么區(qū)別呢?經(jīng)過(guò)多方探究,我小小的總結(jié)了一下,在此記錄一下我的研究心路歷程吧^ ^
第一步:
在@interface 中 使用@property 聲明了一個(gè)屬性名為bgScrollView的變量

C9FEF244-B2F3-4FAB-8132-706D6186FDA0.png

第二步:
使用懶加載創(chuàng)建該屬性名為bgScrollView的視圖

4176E4AB-671D-4FBD-9454-165A66424EDB.png

第三步:
將該視圖加載到其父視圖上 此處呢 一般情況下都是會(huì)用 [self addSubview:self.bgScrollView]; 進(jìn)行加載,此時(shí)加載是正常的,而有時(shí)你可能會(huì)問(wèn)為什么不使用[self addSubview:_bgScrollView]呢; 這是因?yàn)開(kāi)bgScrollView是直接訪問(wèn)該實(shí)例變量,并沒(méi)有調(diào)用其getter 方法,所以若此時(shí)你通過(guò)_bgScrollView進(jìn)行打印,則顯示的為(null) 這是因?yàn)樗](méi)有調(diào)用getter方法而進(jìn)行創(chuàng)建的原因。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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