关于object-c中的super与self
2015-07-08 00:57
435 查看
学过java或者c++的同学或许都知道this关键字是指当前类,这里oc中的self实际上也是一样的道理,是代表该类。而super则是指基类。
比如在进行初始化的时候,oc中都是这么写的:
这里实际就是通过基类Foundation来进行初始化的,如果获取到基类初始化的返回指针,那么就可以进行本类的初始化了。
还有一点需要注意,方法前面的“+”、“-”的含义,加号是指类的方法,也称为静态方法,在java中静态方法不用实例化对象就能直接调用,这里实质是一样的。减号则是对象的方法,通过实例化对象以后,由对象来调用。
比如在进行初始化的时候,oc中都是这么写的:
-(id)init{ self = [super init]; if(self){ //待初始化的代码段 } }
这里实际就是通过基类Foundation来进行初始化的,如果获取到基类初始化的返回指针,那么就可以进行本类的初始化了。
还有一点需要注意,方法前面的“+”、“-”的含义,加号是指类的方法,也称为静态方法,在java中静态方法不用实例化对象就能直接调用,这里实质是一样的。减号则是对象的方法,通过实例化对象以后,由对象来调用。
相关文章推荐
- 关于Object-c 中的构造函数与析构函数
- Objective-C对象模型及应用
- 使用JSONObject和JSONArray
- IOS Objective-c 内存管理
- OC基础7:变量和数据类型
- Objective-C(十四、NSDate类及日期格式化类NSDateFormatter)——iOS开发基础
- java之Object转Map
- OC-可变数组-可变字典嵌套(练习-省市区)
- Fast object segmentation in unconstrained video——非限制场景快速视频对象分割 原文翻译
- jclass和jobject
- Occlusion Geodesics for Online Multi-Object Tracking编译过程
- 写一个system.data.entity的simpledatarepo,实现crudq这些功能,不需要引入entityframework,直接可以使用,用到objectset
- [Object-c] 通知二 通知传值
- gdb 调试动态库遇到 objectdir 错误提示
- 设计模式读书笔记:Adapter Class/Object(适配器)
- Objective-C NSFileManager 文件管理总结
- ArrayAdapter的用法:ArrayAdapter(Context context, int textViewResourceId, T[] objects)
- Object-C 类,对象,运行时,isa
- [Object-c] 通知 通告 简介
- [学习笔记—Objective-C]《Objective-C 程序设计 第6版》第十二章 预处理程序