@property (nonatomic,retain) NSString * name;
- (void)setName:(NSString*)name
{
[name retain]; 把传进来的对象引用计数加一
[_name release]; 把_name以前的对象release一次
_name = name; 把name的对象地址给_name 这时name 和_name共同对象的引用为2
}
@property (nonatomic ,assign) NSString *name
- (void)setName:(NSString*)name
{
_name = name; name和_name 引用计数为1;
}
@property (nonatomic , copy) NSString * name
- (void)setName: (NSString*)name
{
[_name release]; 把_name以前的对象release一次
_name = [name copy]; 把name 的对象拷贝一份给_name
这时_name 的引用计数为1 而name的引用计数不变
}