@property中有哪些属性关键字

本文详细介绍了Objective-C中属性的四大类特质:原子性、读/写权限、内存管理语义及方法名。并针对每种特质进行了具体说明,如nonatomic特质用于指定非原子操作等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

属性可以拥有的特质分为四类:
  1. 原子性—nonatomic特质

在默认情况下,由编译器合成的方法会通过锁定机制确保其原子性(atomicity)。如果属性具备nonatomic特质,则不使用同步锁。请注意,尽管没有名为“atomic”的特质(如果某属性不具备nonatomic特质,那它就是“原子的” ( atomic) ),但是仍然可以在属性特质中写明这一点,编译器不会报错。若是自己定义存取方法,那么就应该遵从与属性特质相符的原子性。

读/写权限—readwrite(读写)、readooly (只读)

内存管理语义—assign、strong、 weak、unsafe_unretained、copy
方法名—getter= 、setter=

getter=的样式:

@property (nonatomic, getter=isOn) BOOL on;
( setter=这种不常用,也不推荐使用。故不在这里给出写法。)

不常用的:nonnull,null_resettable,nullable

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值