instancetype

instancetype与id,类前缀

instancetype在类型表示上,跟id一样,可以表示任何对象类型

instancetype只能用在返回值类型上,不能像id一样用在参数类型上

instancetype比id多一个好处:编译器会检测instancetype的真实类型


类前缀

使用Objective-C开发iOS程序时,最好在每个类名前面加一个前缀,用来标识这个类的“老家”在哪

目的是防止N个人开发了一样的类,冲突了 比如Jake Will、Kate Room在同一个项目中都各自开发了个Button类,这样的程序是不能运行起来的

解决方案:Jake Will的类名叫做JWButton,Kate Room的类名叫做KRButton


Property

@property的使用策略

assign

基本数据类型、枚举、结构体等非OC对象类型

weak

OC对象类型(比如NSArray、NSDate、NSNumber、模型类)

strong

OC对象类型(比如NSArray、NSDate、NSNumber、模型类)

一个对象只要有强指针引用着,就不会被销毁

copy

一般用在NSString、block类型上


字符串NSString

根据需求使用

当外面属性改变的话,内部属性随着改变,使用strong

当外面修改不修改内部的属性使用copy

你可能感兴趣的:(instancetype)