第二章 Object-c 读书笔记
来源:互联网 发布:popo聊天软件 编辑:程序博客网 时间:2024/06/16 01:37
一,object
1,object-c是c语言的子集,它是一门面向对象的语言
2,object-c和c最大的不同点是, object-c有方法, 访问一个oc对象方法,需要向oc对象发送相应的action;
二,发送消息
1,消息的语法
receiver:被通知执行某个方法的对象; selector:方法; arguments:方法的参数;
2,消息的名字是唯一的
3,不能创建名字相同,但是返回值或者参数类型不同的方法
三,创建对象
发送alloc消息
四,销毁对象
设置对象引用为nil,向一个Nil对象发送消息,程序不会crash
五,创建Command Line Tool项目
不能在ios设备中运行
六,oc中的数组只能添加对象,实际上,它只是保存了对象的引用。
NSMutableArray可以动态添加、删除成员,但NSArray创建后不可修改。
七,可以使用快速遍历的方法,遍历一个array,这样效率比普通遍历的方法高,但如果在遍历过程中添加、删除成员会导致异常
八,format string
1,格式化的方法生成一个String对象,和C类似
int a = 1;float b = 2.5;char c = 'A';NSLog(@"Integer: %d Float: %f Char: %c", a, b, c);2,使用%@时,会向相应的对象发送description消息
九,oc保留了c的关键字,使用@表述是oc特有的关键字,如@interface
十,只能使用accessors(get set方法)访问另外一个对象的成员变量;
十一,使用dot
可以使用dot语法直接访问,oc对象的属性,它底层是调用accessor方法
十二,成员方法和类方法
类本身也是一个对象,可以向它发送方法,比如alloc
十三,默认构造函数(Designated initializer)
确保调用了这个构造函数,对象实例化后不会出现问题; 它并不是系统指定的
十四,instancetype
1,只能用于返回值,它的类型和receiver相同
2,在构造函数中的返回值使用instancetype
十五,id
相对于void *, 和具体的类型无关,可以用于快速遍历数组等地方
十六,self
相对于this,即是方法中传入的隐式对象,和发送这个消息的对象一致;
self可以指向一个类名,类本身也是一个对象
十七,super
super用于直接调用分类的方法
十八,数组
1,可以使用[ ]的方法访问数组的数据成员
2,数组的成员必须是对象的引用,不能是简单类型或者c结构体
十九:isa
当一个对象收到消息时,它会通过isa变量通知类对象去查找相应的方法,并执行代码。
如果没有这个方法,成员会抛出running异常,ios虽然也有try{}机制处理,但不推荐使用
二十,命名冲突
尽量使用好的前缀避免命名冲突,要三个字母以上的前缀名
- 第二章 Object-c 读书笔记
- 第二章 object-c
- C Primer读书笔记第二章
- 《C程序设计语言》读书笔记第二章
- [Object-C]读书笔记(一)
- inside the c++ object model 读书笔记(第二章)
- Object-C 第二天
- C++Primer读书笔记(第二章)
- 《Effective Objective-C 2.0》读书笔记---第二章
- C深度剖析读书笔记-第二章符号
- c++premier(第五版)读书笔记-第二章
- Effective Object-c 2.0 读书笔记
- Object-c 第二周周报
- 第二章:Object-C类、对象以及方法
- Understanding and using c pointers 第二章读书笔记
- 读书笔记:C程序设计语言,第二章:知识要点 和 课后题全解
- 《Objective-C编程全解》 读书笔记 第二章
- 汇编语言读书笔记 第二章
- vs2010删除类
- 判断大端还是小端
- 十个随机数求和 一
- java android找工作面试必备
- 设计模式
- 第二章 Object-c 读书笔记
- 最小花费_ssl2206_dijkstra
- 项目感想
- java开发中的23种模式详解
- 2016Android某公司面试题
- 十个随机数求和 二
- SVM学习笔记
- Qt学习记录--01 Qt的model/view架构介绍
- cocos2d-x 3.4 eclipse android 编译是出现WindowsError: [Error 5] 的解决方法 assets