IOS学习笔记之关键词@dynamic

@dynamic这个关键词,通常是用不到的。

它与@synthesize的区别在于:

使用@synthesize编译器会确实的产生getter和setter方法,而@dynamic仅仅是告诉编译器这两个方法在运行期会有的,无需产生警告。

假设有这么个场景,B类,C类分别继承A类,A类实现某个协议(@protocol),协议中某个属性( somePropety )我不想在A中实现,而在B类,C类中分别实现。如果A中不写任何代码,编译器就会给出警告:

“use @synthesize, @dynamic or provide a method implementation"

这时你给用@dynamic somePropety; 编译器就不会警告,同时也不会产生任何默认代码。

最新文章

  1. 配置使用EF常见的一些问题及解决方案
  2. mysql 5.7.15 vs mysql 5.6.31性能测试以及不同linux内核性能比较
  3. 集成TFS Build生成与SonarQube获取代码分析结果
  4. 双日历插件--jq datepicker时间范围选择
  5. cojs 疯狂的重心 疯狂的机器人 题解报告
  6. 1046 Shortest Distance (20)
  7. BJOI2006狼抓兔子
  8. windows和linux双系统删除linux
  9. 关于Javascript语言中this关键字(变量)的用法
  10. Mac  任何选项没有了怎么办?
  11. [Git]09 如何为命令起外号
  12. Python实战之SocketServer模块
  13. NodeJs之文件上传
  14. jmeter测试wordpress使用base64进行鉴权
  15. HAProxy从零开始到掌握
  16. JWT(Json Web Token—)的定义及组成
  17. Navicat for Oracle 绿色版 连接 Oracle 12c
  18. PHP多文件上传操作
  19. day02 大型互联网架构演变历程笔记 和nigix和keepalived
  20. 微信小程序 base64图片在canvas上画图

热门文章

  1. System.Web.HttpCompileException (0x80004005): (0): error CS0016: 未能写入输出文件
  2. eclipes(小白)快捷键
  3. TListView Header重绘和高度设置
  4. 【转】awk、nawk、mawk、gawk的简答介绍
  5. js数组合并
  6. swift 代码添加image
  7. MySQL里的wait_timeout
  8. ffffffuzzzzzzzzzzzzing
  9. java多线程学习-ThreadLocal
  10. ZT 理解 Android 上的安全性