Category

Category:不用繼承物件,就直接增加新的 method,或替換原本的 method

前一章提到,Objective-C 語言中,每個 class 有哪些 method,都是在 runtime時加入的,我們可以透過 runtime 提供的一個叫做 class_addMethod 的function,加入對應某個 selector 的實作。而在 runtime 時想要加入新的 method,使用 category 會是更容易理解與寫作的方法,因為可以使用與宣告 class 時差不多的語法,同時也以一般實作 method 的方式,實作我們要加入的 method。

至於在 Swift 語言中,Swift 的 Extension 特性,也與 Objective-C 的 Category 差不多。

results matching ""

    No results matching ""