您的位置:首页 > 其它

浅析@synthesize与@dynamic的最本质区别

2016-01-20 14:07 411 查看
在项目中,用到了运行时,于是我就对运行时在前两天有了一个更好的理解,可是,问题来了,我写了一个@dynamic,后边还写了set get 方法,使我联想到了@synthesize,因为这两个实在太像了,于是我做了一个测试,以为我知道@syn是系统自动生成set get 方法,程序猿无需自己来实现set和get方法,于是@dy我也想省事,可是经过测试,是不幸的,看下边报错代码:***
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Person setDict:]: unrecognized selector sent to instance 0x7fb208e156d0',很明显,报错说的是没法找到set方法,get方法肯定也找不到了,当我加上之后,就成功运行了,原来是这样的:@dy是需要程序猿手动自己来实现set get方法并且程序猿是必须来实现的,而@syn是不需要程序猿来实现的,因为是系统帮我们实现了,当然了,程序猿不嫌麻烦也可以实现,不过没什么意义
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: