十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
藍鷗iOS培訓(xùn)講師推薦:簡單的學(xué)習(xí)OC中的知識點,類目和延展,那么就要了解類目和延展分別是什么?
宜都網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),宜都網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為宜都上1000+提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的宜都做網(wǎng)站的公司定做!
一、類目
為已知的類增加新的方法
1.類目方法的應(yīng)用:
1)對現(xiàn)有類進行擴展:比如:可以擴展Cocoatouch框架中的類,在類目中增加的方法會被子類繼承,而且在運行時跟其他的方法沒有區(qū)別。
2)作為子類的替代手段:不需要定義和使用一個子類,可以通過類目直接向已有的類里增加方法。
3)對類中的方法歸類:利用catigory把一個龐大的類劃分為小塊來分別進行開發(fā),從而更好地對類中的方法進行更新和維護。
2.類目方法的局限性:
1)無法向類目中添加新的實例變量,類目沒有位置來容納實例變量。如果想增加類的實例變量,只能通過定義子類的方式。
2)如若,在類目中覆蓋先后類的方法。這樣會引起super消息的斷裂,因為類目總的方法具有更高的優(yōu)先級,因此,一般不要覆蓋現(xiàn)有類中的方法。
3.類目的定義:
類目的命名規(guī)則:類名+擴展方法,如“NSString+Revert”。類目的接口聲明與類的定義十分相似,但類目不繼承父類,只需要帶有一個括號,表明該類目的主要用途。
NSString+Revert.h文件:

NSString+Revert.m文件:

二、延展
可以在這個類的定義里用類目聲明私有方法
類的延展可以看成是一種匿名的類目,類有時需要一些只有自己才能看見,所用的私有方法這種私有方法可以通過延展的方式來聲明,延展中定義的方法在類本身的@implementation代碼區(qū)域中實現(xiàn)。

當(dāng)在定義延展的時候不提供類目名時,延展中定義的方法被看作是“必須實現(xiàn)”的API,如果方法沒有實現(xiàn)代碼,那么編譯器就會給予警告,這個時候的方法實現(xiàn)就一定出現(xiàn)在類主體的@implementation代碼塊中。
OC中的類目和延展內(nèi)容講解基本上就是這樣,希望能夠?qū)δ阌兴鶐椭?/p>
標(biāo)題名稱:iOS開發(fā)篇——介紹類目和延展(OC)
文章分享:http://www.jiaotiyi.com/article/pdoojd.html