1.概念

非正式协议,非正式协议是NSObject类(包括它的子类)的类别,其所有的子类都含蓄地接受了这个协议。非正式协议中的方法是否实现都是可选的,因此在调用非正式协议中的方法之前,需要去检查对象类是否实现了它。在Objective-C2.0中引入可选的正式协议方法之前,非正式协议是Foundation和AppKit类实现委托的唯一方式。

非正式协议就是类别,即凡是NSObject或其子类的类别,都是非正式协议

正式协议,使用@protocol声明的协议,实现协议类应该遵守协议,协议的方法有两类属性@required和@optional两种,@required的方法遵守协议必须实现协议中的方法,@optional属性不做要求。

OC正式协议和非正式协议相关推荐

  1. OC正式协议和非正式协议的区别

    最近看了些关于objective-c的正式协议和非正式协议的内容,发现还是有些混乱,可能是因为还不熟悉OC,对正式协议和非正式协议的使用还不是很熟练,所以想整理一下 非正式协议,是使用类别catego ...

  2. OC的正式协议和非正式协议

    最近看了些关于objective-c的正式协议和非正式协议的内容,发现还是有些混乱,可能是因为还不熟悉OC,对正式协议和非正式协议的使用还不是很熟练,所以想整理一下 非正式协议,是使用类别catego ...

  3. OC中的非正式协议与正式协议的区别

    声明:以下内容转自:http://blog.csdn.net/wzzvictory/article/details/9295317# 这两个概念困扰我很久了,一直都很像搞清楚到非正式协议和正式协议有什 ...

  4. Objective-C(八、正式协议Protocol,非正式协议informal protocol)——iOS开发基础

    结合之前的学习笔记以及参考<Objective-C编程全解(第三版)>,对Objective-C知识点进行梳理总结.知识点一直在变,只是作为参考,以苹果官方文档为准~ 八.正式协议和非正式 ...

  5. Objective-C非正式协议与正式协议

    为什么80%的码农都做不了架构师?>>>    类别与类扩展的区别: ①类别中只能增加方法: ②是的,你没看错,类扩展不仅可以增加方法,还可以增加实例变量(或者合成属性),只是该实例 ...

  6. Object-C非正式协议与正式协议的区别

    Object-C非正式协议与正式协议的区别 Object-C非正式协议与正式协议的区别 - braddoris的专栏 - 博客频道 - CSDN.NET http://blog.csdn.net/br ...

  7. 2016 - 2- 2 非正式协议与正式协议

    在重温<OBJC编程基础>这本书时,对于非正式协议的感觉非常陌生,阅读了一篇王中周的博客,结合自己在书中阅读的内容,做一些总结. 一.非正式协议 显然这个名词是相对于正式协议而言的.在解释 ...

  8. 非正式协议和正式协议的区别

    这两个概念困扰我很久了,一直都很像搞清楚到非正式协议和正式协议有什么区别和联系,下面结合网上的资料和自己的看法谈谈这个问题. 一.非正式协议 显然这个名词是相对于正式协议而言的.在解释非正式协议之前, ...

  9. 非正式协议/正式协议

    1.非正式协议(interface)   非正式协议在Obj-c中关键字虽然是interface,但是这个和C#中的接口并不完全相同.   回忆之前学过的内容,我们定义一个类Sample时,会生成一个 ...

最新文章

  1. matlab RBF 神经网络拟合
  2. saiku 连接 MySQL_Saiku连接mysql数据库(二)
  3. cocos2d精灵教程(三篇)
  4. Oralce SQLPlus 以及shell脚本中spool输出到文件时的格式化输出
  5. Tensor is not an element of this graph 解决方法
  6. wifi物理地址怎么改_安卓手机修改wifi物理mac地址的三种方法
  7. 双参数cfar c语言代码,一种多目标环境下的SAR图像双参数CFAR检测方法与流程
  8. word插入公式/endnote
  9. 牛顿柯特斯公式及复合形式、龙贝格求积公式,高斯勒让德求积公式
  10. scala 打印乘法口诀表
  11. lenovo服务器换系统重装系统_联想服务器重装系统教程
  12. 人应该活成什么样子?该以什么方式活着?
  13. Django Rest framework (看完直接上手用)
  14. 微信小程序页面数量限制问题
  15. 《那些年啊,那些事——一个程序员的奋斗史》——43
  16. Persistence Query
  17. 从官网下载mysql 5.7
  18. IDEA 编译gong'chenError:(1, 1) 错误: 非法字符: '\ufeff'
  19. 利用IPV6免费登QQ和打电话
  20. 【自建NAS】基础环境搭建,几行命令建成私有云盘,无复杂配置

热门文章

  1. 精美底部营销通用型插件(客服+电话+微信)按钮
  2. 在知乎发文章基本没流量
  3. Altera Scatter-Gather DMA (SG-DMA)的简单使用
  4. 中小学高级职称计算机考试试题,2012年小学教师高级职称考试备考试题及参考答案(2)...
  5. CMNET和CMWAP
  6. ubuntu使用zsh进行命令行自动补全
  7. 美国计算机有读一年的学校吗,美国计算机排名多少的学校值得去读?相关院校资讯!...
  8. geogebra使用技巧
  9. C++的运算符重载 http://blog.csdn.net/zgl_dm/article/details/1767201
  10. Linux命令之yum命令