2018年4月26日 星期四

Object-C Extensions

Extension 可以把一個很大的Class拆分,有點類似Category

Extension與Category的差別

  1. Extension中可以定義變數.屬性.方法,Category只能定義方法
  2. Extension不能按照功能或層級來自定名稱(匿名),Category可以在Class後的小括弧內定義
  3. Extension定義出來的Method必須在原Class的Implement中實作 ,Category有自己的.m檔

Extension大部分使用在宣告私有的屬性跟方法,因為Method在.h檔都可以被外部呼叫,如果想宣告一個私有方法,一個方式是只寫Implement,另一個方式就是在.m檔底下使用Extension

Extension使用方法如下:



沒有留言:

張貼留言