- ( void )setName:( NSString *)name {
推断原有对象和新对象是否是同一个对象 , 假设是同一个 , 就没有必要再又一次赋值 , 否则会先 release 再 retain, 就会变成野指针
推断原有对象和新对象是否是同一个对象 , 假设是同一个 , 就没有必要再又一次赋值 , 否则会先 release 再 retain, 就会变成野指针
if (_name != name) {
释放保有之前对象的全部权
[_name release];
让实例变量 _name保有新的对象的全部权
_name = [name retain];
}
}