Objective C 属性简单理解

Oc语言中,属性的语法如下

@property (特性) 类型 属性名称;

Oc编译器会自动生成 :类型 _名称 这样的私有属性

属性的特性

在Oc中,属性支持很多中特性

atomic

atomic作为oc属性的默认特性,简单的理解为原子属性,就是多线程下,可以安全访问,不会有线程安全的问题。但是效率不会太好。

noatomic

noatomic是非线程安全的,可以多个线程同时去读写,性能会比atomic好,但是多线程下可能会导致一些问题。

readwrite和readonly

从字面意思就可以看出来,一个是可读写,一个是只读,readwrite是默认值,如果设置为readonly,那么盖属性无法被赋值,只能读取。

内存管理

在早期的IOS开发中,内存管理的方式是MRC(大概意思就是手动管理内存的开辟和释放),但是IOS5之后,引入了ARC(自动释放),现在最新已经IOS14+了。所以除了面试,一般情况下不用考虑MRC了。
在ARC下,内存管理相关的几个特性有 strong weak assign copy等。

strong

是属性的默认特性,设置为strong的时候

posted on 2022-01-11 22:00  快乐海盗  阅读(43)  评论(0编辑  收藏  举报