id、静态类型、自省-iOS初学
1 id、静态类型
id是一个指向未知类型的指针。
id myObject
static typing
NSString *s = @"string"
区别在于,使用 NSString *编译时编辑器(XCODE)可以帮助你找到BUG或给出建议。因此大部分时间我们使用静态类型(NSString *)
编辑器只会警告,不会强制作用,写代码时减少warning。
2 自省 introspection
三种方法:
isKindOfClass //是否是这个类及其子类
isMemberOfClass //是否是这个类,不可以是子类
responseToSelector//这个id指向的对象是否可以对特定方法有反应