autorelease应用场景
一, 常用来在类方法中快速创建对象并加入自动释放池
需求,通过类方法完成: 1,创建一个对象 2,用完之后系统把对象释放掉
在类.h文件中 +(id)方法名;
在类.m文件中 +(id)方法名{ return [[[类(self) alloc]init] autorelease]; }
返回对象空间,自动把对象加入到自动释放池 (突然感觉学到了大招的感脚)
在main.m中创建实例 Person *p = [Person 方法名];
再重写dealloc方法进行验证;
2,子类继承父类的方法也可以进行快速创建对象,将父类Person alloc改成selfalloc即可;
id和instancetype区别 instancetype可以智能的帮我们判断赋值的指针变量的类型和方法的返回值类型是否一致
|