OC @property声明全局变量

风格不统一 提交于 2019-12-09 10:47:59

之前我介绍了set和get方法,但在实际操作时,我们会发现重复的代码量太大,如果有几十个成员变量要声明,那么就要对应有几十个set和get方法,为了免去手工书写set和get方法繁琐的代码,人民的英雄@property应运而生。

@property是编译器的指令,那么什么是编译器的指令呢?其实就是去告诉编译器要做什么啦~

@property 告诉编译声明实现set、get方法

这里出现了陌生的标识符 

我们简单的介绍一下

nonatomic 代表着线路安全

在手机还只有512M内存时,如果对属性加锁,那么手机运行速度就会变得非常慢,所以对属性一般都是不加锁的,这样的速度相对快很多,这个习惯延续到了今天。

strong和weak 代表内存管理。

直接赋值的如int double等,直接写成

@property (nonatomic)int age;

而对象(字符串)要用strong作为参数。

这样是不是方便很多了呢?

其实在xcode早期版本,@property只是声明set和get方法,实现它们还需要另一个指令@synthesize

但是@synthesize 已经消失在滚滚oc长河当中,当做了解就好。 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!