1、引用方式的修饰
参考:strong和weak指针:https://blog.csdn.net/q199109106q/article/details/8565017
1)、strong
引用计数器加1;
指针指向同一段内存;
2)、weak
引用计数器不会加1;
当指针指向的对象被释放以后,指针指向nil,不会产生野指正
3)、copy
引用计数器加1;
指针指向俩段不同的内存;
可变数据类型被copy修饰以后是不可变的;
4)、assign
引用计数器不会加1;
当指针指向的对象被释放以后,指针指向nil,容易产生野指针
5)、retain
MRC下使用;
引用计数器加1;
指针指向同一段内存;
2、getter=xxx/setter=xxx
1)、getter=xxx
重命名对应属性的getter方法,方法名为xxx;
2)、setter=xxx
重命名对应属性的setter方法,方法名为xxx;
3、nonatomic和atomic
参考:https://www.jianshu.com/p/7288eacbb1a2
简介:对对象执行不同的setter/gettet方法;
1)、nonatomic
线程不安全;
多线程下读写不安全;
效率较高;
2)、atomic
线程不安全;
多线程下读写安全;
效率较高,没nonatomic高
网友评论