关于懒加载中的self.和_

---恢复内容开始---

在开发中,经常会用到懒加载,最常用的如加载一个数组

如图,在这个懒加载数组中有的地方用到了_array有的地方用到了self.array  

原因是_array是直接访问,而self.array是通过属性访问,也就是通过set/get方法来读取这个值,,xcode会默认将两个值通过syncthesize关键字进行同步

self.array 系统会去调用get方法来访问这个值

而当if (self.array ==nil)时,系统会一直调用set/get方法,理论上会造成死循环

当if(_array == nil)时是直接值访问的,不会调用set/get方法

原文地址:https://www.cnblogs.com/ritian/p/5227084.html