【Objective-C学习记录】第五天
2015-12-06 22:01
489 查看
self,super
self理解为C++里的this,当使用self调用方法时,会从当前类中开始查找,没有就依次查找上一级父类。
super就是父类,可以直接调用父类的方法。
+/-
OOP中存在公有方法和私有方法,OC中没有,但是用+/-来表示普通方法和静态方法。另外可以用@private来表示私有变量,OC中所有的变量默认都是私有的,方法都是公有的。
深拷贝和浅拷贝
浅拷贝就是增加一个指针指向内存地址,深拷贝是增加一个指针并且申请一个新的内存。深拷贝的好处很明显了,前一种方式可能出现A B指针同时指向一个地址,A指针释放后B指针会报错,而深拷贝就不会出现这种情况,缺点就是内存占用。
C\C++和OC混用
只要cpp文件中不包含OC代码即可直接用include导入使用。
category和extension
不同之处是后者可以添加属性,且extension里的方法必须实现。
Objective-C是一种动态运行时语言,这是因为OC在编译时不会确定变量类型,而是在运行时才确定数据类型。
在OC中,栈内存空间由编译器自动管理,堆内存需要手动管理。
self理解为C++里的this,当使用self调用方法时,会从当前类中开始查找,没有就依次查找上一级父类。
super就是父类,可以直接调用父类的方法。
+/-
OOP中存在公有方法和私有方法,OC中没有,但是用+/-来表示普通方法和静态方法。另外可以用@private来表示私有变量,OC中所有的变量默认都是私有的,方法都是公有的。
深拷贝和浅拷贝
浅拷贝就是增加一个指针指向内存地址,深拷贝是增加一个指针并且申请一个新的内存。深拷贝的好处很明显了,前一种方式可能出现A B指针同时指向一个地址,A指针释放后B指针会报错,而深拷贝就不会出现这种情况,缺点就是内存占用。
C\C++和OC混用
只要cpp文件中不包含OC代码即可直接用include导入使用。
category和extension
不同之处是后者可以添加属性,且extension里的方法必须实现。
Objective-C是一种动态运行时语言,这是因为OC在编译时不会确定变量类型,而是在运行时才确定数据类型。
在OC中,栈内存空间由编译器自动管理,堆内存需要手动管理。
相关文章推荐
- OC-随便看看
- 转载:Objective-C中的 instancetype 和 id 关键字
- Objective-C消息模式
- Objective-C:运行时runtime
- Conclusion for Inheritance and Object Oriented Design
- runtime理解
- Objective-C初学者速查表
- Objective-C 零散知识笔记 by STP
- 函数对象(function object)的简单讲解
- 【Objective-C学习记录】第四天
- Objective-c中的面向对象
- 【Objective-C学习记录】第三天
- READING NOTE: Object Detection by Labeling Superpixels
- ios开发——Objective-c的SHA224/SHA256/SHA384/SHA512加密算法的实现
- java下JSONObject的key值转为小写
- WaitForSingleObject()函数、WaitForMultipleObject()函数
- 无法将类型为“System.__ComObject”的 COM 对象强制转换为接口类型,原因为没有注册类
- object-c之音频视频的播放
- object-c之音频视频的播放
- 应用mysql_fetch_object()函数从数组结果集中获取信息