1.分類(category)的作用
(1).作用:可以在不修改原來類的基礎上,為一個類擴展方法。
(2).最主要的用法:給系統自帶的類擴展方法。
2.分類中能寫點啥?
(1).分類中只能添加“方法”,不能增加成員變量。
(2).分類中可以訪問原來類中的成員變量,但是只能訪問@protect和@public形式的變量。如果想要訪問本類中的私有變量,分類和子類一樣,只能通過方法來訪問。
(3).如果一定要在分類中添加成員變量,可以通過getter,setter手段進行添加。
1.在項目中添加類,選擇Objective-C File,填寫自定義類名。
1.NSString+DLog.h文件:
2.NSString+DLog.m文件:
5.分類(category)和類擴展(extension)的關系
1.類擴展(extension)是category的一個特例,有時候也被稱為匿名分類或者私有類。他的作用是為一個類添加一些私有的成員變量和方法。
2.類擴展能寫點啥?和分類不同,類擴展即可以聲明成員變量又可以聲明方法。
3.類擴展聽上去很復雜,但其實我們很早就認識他了。你記得繼承自UIViewController的ViewController和繼承自NSObject的類有什么不同么?
4.類擴展可以定義在.m文件中,這種擴展方式中定義的變量都是私有的,也可以定義在.h文件中,這樣定義的代碼就是共有的,類擴展在.m文件中聲明私有方法是非常好的方式。
5.類擴展中添加的新方法,一定要實現。categorygory中沒有這種限制。