上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页
摘要: 僵尸对象:占用空间被释放的对象野指针:指向僵尸对象的指针(给野指针发消息会报错)空指针:指向nil的指针(给空指针发消息会不报错)因为给野指针发消息会报错,因此我们要监听僵尸对象,这样就可以在控制台输出错误原因设置如下图 阅读全文
posted @ 2016-01-17 20:13 爱上咖啡的唐 阅读(356) 评论(0) 推荐(0) 编辑
摘要: ARC (Automatic Reference Counting) 编译器自动在适当的时候给代码添加retain/release方法,而不需要程序员自己添加 与java垃圾回收机制的区别: java由系统在适当的时候自动回收空闲空间,而xcode由编译器回收MRC(Manul Refer... 阅读全文
posted @ 2016-01-17 18:31 爱上咖啡的唐 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 在对象占用空间被释放的时候执行(引用计数器为0)而且与init方法相对应,要执行父类的dealloc方法(在最后调用,否则会引发某些未知错误) 阅读全文
posted @ 2016-01-17 18:22 爱上咖啡的唐 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 对象引用的个数,占4个字节在对象创建的时候就为1,而只有为0的时候才会释放对象占用内存(所以系统不会释放对象占用的空间)获得retain消息时会加1,获得release消息时会减1retainCount用来显示对象引用的个数,但是不一定准确。而对象占用空间被释放时一定会调用dealloc方法 阅读全文
posted @ 2016-01-17 18:14 爱上咖啡的唐 阅读(180) 评论(0) 推荐(0) 编辑
摘要: - (id)init { self = [super init]; if (self) { // Initialize self. } return self;}注意要先实现父类的init方法,再实现自己的 阅读全文
posted @ 2016-01-17 17:57 爱上咖啡的唐 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 说明:SEL类型第一次调用时会逐个匹配方法名,并加载到内存,后面调用时就直接在内存中查找方法1 检查对象/方法有没有实现某个方法(使用respondsToSelector方法)@implementation Person-(void)setAge:(int)age{ _age=age;}-(int)... 阅读全文
posted @ 2016-01-17 17:26 爱上咖啡的唐 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 方法调用的以及类之间继承关系 阅读全文
posted @ 2016-01-16 20:16 爱上咖啡的唐 阅读(96) 评论(0) 推荐(0) 编辑
摘要: instancetype相当于id,但是略有不同1instancetype在编译时可以判断对象的真实类型,而id不会.因此我们在自定义构造方法时要用instancetype2instancetype只可以做返回值类型,不可以用来定义变量 id都可以 阅读全文
posted @ 2016-01-16 20:13 爱上咖啡的唐 阅读(158) 评论(0) 推荐(0) 编辑
摘要: +(instancetype)person //p小写{ return [[self alloc] init];}+(instancetype)personWithAge:(int)age{ Person *p=[[self alloc] init]; p.age=age; return p... 阅读全文
posted @ 2016-01-16 20:07 爱上咖啡的唐 阅读(180) 评论(0) 推荐(0) 编辑
摘要: 程序启动的时候,代码就会被加载到内存中,放入代码区;然后会自动执行load方法(只会在此时执行一次) 每个类的load方法都会执行,有继承关系会先执行父类,再执行子类的然后在某个类被创建的时候会执行其initialize方法(也只会执行一次) 有继承关系会先执行父类,再执行子类的 阅读全文
posted @ 2016-01-16 19:58 爱上咖啡的唐 阅读(112) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 12 下一页