@property与@synthesize的差别
上一篇文章我有講到self.與_的差別,往往和這個問題相伴隨的是我困惑的問題是"@property與@synthesize的差別"
@property的使用方法
@interface ViewController ()
{
? ? NSArray *arr2;
}
@property(nonatomic,retain)NSArray *arr;
@end
@implementation ViewController
- (void)viewDidLoad {
? ? [super viewDidLoad];
}
- (void)setArr:(NSArray *)arr{
}
- (void)setArr2:(NSArray *)arr{
}
@end
如上所看到的的一段代碼,有倆個變量arr2與arr
假設你是認真敲過相似的代碼,你能夠在寫程序的過程中就發現,arr的set方法似乎已經存在,而arr2的set方法須要全然手動敲定,并且須要調用才干運行。
所以@property的主要作用就是生成存取方法,及set和get方法
@sythesize的使用方法
承接上面的代碼,我們能夠在運行代碼的最前面加入
@synthesize arr = _arr;這樣當我們不須要運行存取方法的時候,及_arr就能夠獲取arr的值,
@sythesize的作用的是更改屬性名稱
假設我們使用
@synthesize?arr = ssarr;
那么在運行文件arr就會叫做ssarr。通過ssarr就能夠獲取arr的值,聽起來比較繞口。敲寫程序就知道什么意思了
轉載于:https://www.cnblogs.com/claireyuancy/p/7356772.html
總結
以上是生活随笔為你收集整理的@property与@synthesize的差别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阿里云秘钥池
- 下一篇: 关于Java的“找不到或无法加载主类”