igo*_*rov 1 methods runtime objective-c
码:
int main(int argc, const char * argv[]) {
id idObject = @"12345";
NSNumber *n = idObject;
NSLog(@"%@\n", [n description]);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
它打印"12345".怎么样?我想这是因为Objective-C使用动态绑定.因此,决定在运行时选择哪种方法,并且该决定基于方法(选择器)和接收器对象的名称.也许接收器对象因"isa"指针而被人知道......?
这是因为:
NSObject都有一个description方法.n实际上是一个NSString而不是NSNumber您可能想到的类型.| 归档时间: |
|
| 查看次数: |
106 次 |
| 最近记录: |