分類 Category
分類只能給類擴充方法,不能添加屬性!
- 什麼是Category
- Category有很多種翻譯:分類 / 類別 / 類目(一般叫分類)
- 分類是一個類的補充,是類的一部分。
- Category的作用:
- 可以在不修改原來類的基礎上,為這個類擴充一些方法。(使用繼承也可以,在子類中擴充父類沒有的方法)
- 一個龐大的類可以分模塊開發
- 一個龐大的類可以由多個人來編寫,更有利於團隊合作
- 常見用法
- 將一個類分成若干個部分,便於閱讀和管理
- 給一個已有的類通過定義分類的方式增加功能(經常給系統的類擴充方法)
- 語法格式
@interface 類名 (分類名)
//聲明擴充的方法
@end
@implementation 類名 (分類名)
//實現擴充的方法
@end
創建一個分類:
分類的注意事項:
- 分類是用於給原有類添加方法的, 它只能添加方法, 不能添加屬性(成員變量)
- 分類中定義@property屬性, 只會生成setter/getter方法的聲明,不會生成方法的實現和實例變量。
- 可以在分類中訪問原有類中.h中的屬性
方法的調用順序: 1.分類 —> 2.本類 —> 3.父類
擴展 Extension
匿名分類 在類的.m文件中定義擴展,在擴展中定義私有屬性和私有方法。
- 概念
- Extension有很多種翻譯:擴展 / 延展 / 匿名分類(一般叫擴展)
- 擴展是一特殊的分類, 沒有分類名。
- 可以在擴展中定義實例變量,定義屬性,增加方法。
- 語法格式
@interface 類名 ( )
//聲明私有的成員變量
//聲明私有的屬性
//聲明私有的方法
@end
在類的.m文件中定義擴展,在擴展中定義私有的屬性和聲明私有的方法。
在UI中常用擴展來定義私有屬性!
Category練習:
【iOS開發入門 ☞ OC語言·筆記七】的相關資料介紹到這裡,希望對您有所幫助!
提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!