快速上手Runtime(四)之動態新增方法

2022-08-22 05:45:12 字數 771 閱讀 3393

如果乙個類方法非常多,載入類到記憶體的時候也比較耗費資源,可以使用動態給某個類,新增方法解決。做到優化記憶體,節省資源的效果。

//

//resolveinstancemethod

////

created by doman on 17/3/23.

////

#import

"person.h

"#import

@implementation

person

//動態新增方法,首先實現這個resolveinstancemethod

//resolveinstancemethod呼叫:當呼叫了沒有實現的方法沒有實現就會呼叫resolveinstancemethod

//resolveinstancemethod作用:就知道哪些方法沒有實現,從而動態新增方法

//sel:沒有實現方法

//定義函式

//沒有返回值,引數(id,sel)

//void(id,sel)

void eatfun(id self, sel _cmd, id

msg)

+(bool)resolveinstancemethod:(sel)sel

return

[super resolveinstancemethod:sel];

}@end

實現效果:

讓你快速上手Runtime

1.傳送訊息 建立person物件 person p person alloc init 呼叫物件方法 p eat 本質 讓物件傳送訊息 objc msgsend p,selector eat 呼叫類方法的方式 兩種 第一種通過類名呼叫 person eat 第二種通過類物件呼叫 person cl...

讓你快速上手Runtime

1.傳送訊息 建立person物件 person p person alloc init 呼叫物件方法 p eat 本質 讓物件傳送訊息 objc msgsend p,selector eat 呼叫類方法的方式 兩種 第一種通過類名呼叫 person eat 第二種通過類物件呼叫 person cl...

mysql快速上手之基本操作

登入mysql的快捷方式 mysql h hostname u username p mysql uroot proot 回車直接登入 mysql uroot p 回車之後再輸入密碼 開啟與關閉mysql的服務 net start mysql net stop mysql 建立mysql使用者 gr...