我已经在 iOS 上玩了几个月了,总是使用 @synthesize 来“制作 setter 和 getter”的 @property。但是在一些教程中,我经常看到@synthesize param = _param,我不太明白它的意思。
For example: in .h file
@property (nonatomic, retain) NSString *param1;
@property (nonatomic, retain) NSString *param2;
in .m file
@synthesize param1; //this is what I like to do
@synthesize param2 = _param2; // this is what 'experienced' programmer does
根据我的习惯,我可以使用 self.param1,或者只是 param1 来获取这个实例,顺便问一下有什么区别吗?
从其他人看来,他们似乎喜欢使用 _param2 而不是其他方法。我知道它与 getter/setter 有关,但我仍然不太清楚。
有人可以解释他们的区别和优缺点吗?
非常感谢。