Ios開發之Category,ioscategory

來源:互聯網
上載者:User

Ios開發之Category,ioscategory

Category是在不改變已存在類的情況下,對其添加方法來達到對類進行功能擴充的目的。

對類功能進行拓展的時候,我們會有多種方式,比如說可以通過繼承也可以進行功能擴充,但是在Category和繼承上我們通常會優先選擇Category。

通過Category對一個類進行擴充有幾點好處。

1、可以不用改變現存的類檔案,同樣可以架構中的類直接進行功能擴充,這種情況下不需要改變對象所指向的資料類型。

2、我們可以直接在現存的類中添加Category,這種情況下,我們可以對類中的功能做一個功能區分,達到將功能分組的目的。如果檢視方塊架中的一些類檔案的話,你會發現他們大多都適用Category做了功能區分。

3、很多的第三方軟體大量的使用Category做自訂改造,比如說SDWebimage就是通過Category做的功能擴充。

4、Category可以實現多人共同開發的功能,只要將功能區分好,

可以實現多人同時對統一個類的功能開發,提高開發效率。

下面我們來看它的用法:

1.建立一個Category檔案的時候可以在objective-c file檔案中選擇

2.File:填寫Category名稱

 File Type:選擇Category

 Class:選擇要擴充功能的類

3.建好之後類名稱會直接變成現在的樣子,我們可以看到,我們是對NSString做了一個反轉的功能擴充。

4.在標頭檔中添加要拓展的方法,我們現在是對NSString添加和一個反轉的方法。

 5、在我們的實現檔案中實現我們拓展的方法這樣我們就可以對我們的NSString對象直接進行反轉的功能

  6、我們接下來看一下怎樣使用它,使用的時候將我們的標頭檔import進來,原先指向NSString的對象可以直接使用它所擴充的功能。

 

作者:傑瑞教育
出處:http://www.cnblogs.com/jerehedu/ 
著作權聲明:本文著作權歸煙台傑瑞教育科技有限公司和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文串連,否則保留追究法律責任的權利。
技術諮詢: 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.