OC基础知识点之class、superclass、super
一、class、superclass
- class方法、最终实现都是在NSObject中实现的;
object_getClass(id _Nullable obj)
传入一个对象返回类的类型- class的实现
- (Class)class { return object_getClass(self);}
- superclass的实现
- (Class)superclass { return class_getSuperclass(object_getClass(self)); // 取决于消息的接收者;}
二、super
super 接收两个对象、一个是id receiver即是消息接收者,另一个是current_class
image.png
- super 决定的是从父类开始查找方法的实现;
- 消息的接收者仍是子类的对象;
- current_class是receiver的Class对象;
三、其余关键字
- @synthesize: 自动生成setter、getter、及成员变量
- @dynamic: 提示编译器不要生成setter、getter、及成员变量;运行时自己增加
- IMP:函数地址;
- c语言的函数地址就是函数名称
- 方法签名:方法的返回值、参数类型;
- NSInvocation封装了一个方法调用,包括:方法调用者、方法名、方法参数
- invoke:调用
谨以此作为平常少量心得记录,有不足之处各位大佬批评指正,不胜感激
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » OC基础知识点之class、superclass、super
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » OC基础知识点之class、superclass、super