#import <Foundation/Foundation.h>
#import "Room.h"
#import "Car.h"
#import "Dog.h"
@interface Person : NSObject
{
Room *_room;
Car *_car;
Dog *_dog;
}
/*
- (void)setRoom:(Room *)room;
- (void)setCar:(Car *)car;
- (void)setDog:(Dog *)dog;
- (Room *)room;
- (Car *)car;
- (Dog *)dog;
*/
@property(nonatomic, retain) Room *room;
// 1.相同类型的property修饰符不能同时使用
// 2.不同类型的property修饰符可以多个结合在一起使用, 多个之间用,号隔开
// 3.iOS开发中只要写上property, 那么就立刻写上nonatomic
/*
- (void)setAge:(int)age;
- (int)age;
- (void)setAge:(int)age
{
_age = age;
}
- (int)age
{
return _age;
}
readonly: 只会生成getter方法
readwrite: 既会生成getter也会生成setter, 默认什么都不写就是readwrite
getter: 可以给生成的getter方法起一个名称
setter: 可以给生成的setter方法起一个名称
retain: 就会自动帮我们生成getter/setter方法内存管理的代码
assign: 不会帮我们生成set方法内存管理的代码, 仅仅只会生成普通的getter/setter方法, 默认什么都不写就是assign
多线程
atomic :性能低(默认)
nonatomic :性能高
在iOS开发中99.99%都是写nonatomic
*/
@end
08-06、@property的补充:retain/assign,nonatomic/atomic
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1.@property有哪些参数? 第一组: 内存管理特性 retainassigncopystrongweak ...
- #synthesize关键字: 根据@property设置,自动生成成员变量相应的存取方法,从而可以使用点操作符来...
- @property 属性中 assign,nonatomic,retain,strong,weak的区别 atom...
- OC使用了一种叫做引用计数的机制来管理对象,如果对一个对象使用了alloc、[Mutable]copy,retai...