真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

【Objective-C】OC中類別(Category)基本概念與用法-創(chuàng)新互聯(lián)

類別(Category)的基本概念

創(chuàng)新互聯(lián)自2013年起,先為潼關(guān)等服務(wù)建站,潼關(guān)等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為潼關(guān)企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

   封裝是面向?qū)ο蟮囊粋€特征,OC也不例外,但是有的時候我們會碰到這樣的一種情況,不如我封裝了一個類,

不想再動它了,可是隨著程序功能的增加,需要在那個類中增加一個小小的方法,這是我們就不必再那個類中

做修改或者在定義一個子類,只需要在用到的地方隨手添加一個該類的類別(Category)即可。

  (1)在類別中定義的方法,會成為原始類的一部分,與其他方法的調(diào)用沒有區(qū)別。

  (2)通過給父類定義類別方法,其子類也會繼承這些方法。如果子類添加類別方法,父類則不會用手子類的類別方法。

類別方法的應(yīng)用

  •    對現(xiàn)有類進(jìn)行擴(kuò)展:比如,可以進(jìn)行擴(kuò)展Cocoa touch框架中類,你在類別中增加的方法會被子類所繼承,而且

       在運(yùn)行時跟其他的方法沒有區(qū)別。

  •    作為子類的替代手段:不需要定義和使用一個子類,你可以通過類別直接向已有的類別中增加方法。
  •    對類中的方法進(jìn)行歸類:利用category把一個龐大的類劃分為小塊來分別進(jìn)行開發(fā),從而更好的對類中的方法進(jìn)行更新和維護(hù)。

類別方法的局限性

  •    無法向類別中,添加新的實(shí)例變量,類別沒有位置來容納實(shí)例變量。如果想增加類的實(shí)例變量,只能通過定義子類的方式。
  •    如若在類別中覆蓋現(xiàn)有類的方法。這樣可能會引起super消息鏈的斷裂,因?yàn)轭悇e中的方具有更高的優(yōu)先級,因此,一般不要覆蓋

        現(xiàn)有類中的方法

類別的命名和用法

  類別的命名規(guī)則:類名+擴(kuò)展方法,如:NNString+Add;

  類別的接口聲明與類的定義十分相似,但是類別不繼承父類,只需要帶有一個括號,表明該類的主要用途

   

  聲明文件:

#import   @interface NSArray (Convert) +(NSMutableArray *)arrayFormNumber:(int)number;  @end

  實(shí)現(xiàn)文件:
  
#import "NSArray+Convert.h"  @implementation NSArray (Convert)  +(NSMutableArray *)arrayFormNumber:(int)number{     NSMutableArray *numberArray=[[NSMutableArray alloc]init];    while (number) {         int last=number%10; //取出最后一位;         number=number/10;         [numberArray addObject:[NSNumber numberWithInt:last]];              }     return  [numberArray autorelease]; }  @end

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


本文名稱:【Objective-C】OC中類別(Category)基本概念與用法-創(chuàng)新互聯(lián)
文章來源:http://weahome.cn/article/cdicod.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部