If synthesize is omitted and the semantic feature is declared as assign retain copy, you can implement the setter and getter methods by yourself, and settergetter
If we omit synthesize and implement the setter and getter methods by ourselves, the system will not generate the corresponding setter and getter methods, as well as instance variables.
1. When the semantic feature is declared as assign, the internal implementation of the method is implemented by setter and getter.
-(Void) setName :( NSString *) name {
_ Name = name;
}
-(NSString *) name {
Return _ name;
}
2. When the semantic feature is declared as retain, the setter and getter methods are internally implemented.
-(Void) setName :( NSString *) name {
If (_ name! = Name ){
[_ Name release];
_ Name = [name retain];
}
}
-(NSString *) name {
Return [[_ name retain] autorelease];
}
3. When the semantic feature is declared as copy, the setter and getter methods are implemented internally.
-(Void) setName :( NSString *) name {
If (_ name! = Name ){
[_ Name release];
_ Name = [name copy];
}
}
-(NSString *) name {
Return [[_ name retain] autorelease];
}