Catgory(类目/分类)
    1.分类是给原有类添加方法,它只能添加方法,不能添加属性(成员变量)
    2.分类中定义@property,只会生成setter/getter方法的声明,没有方法的实现以及私有变量。
    3.分类中的方法不能和本类的方法名相同,否则会有警告,而且调用的时候会优先调用分类的方法,即覆盖本类的方法。  
    4.分类的方法和实现分开,一对多,1个.h文件对应多个.m文件,典型的分散实现;
延展(Extension)
 1.延展为类创建私有方法,一个.m文件对应多个.h文件,分配权限时可以用(想用哪一个,就导入哪一个头文件)
协议(protocol)
1.协议相当于其它语法里的接口(抽象类)它只有声明没有实现。它可以声明一些必须实现的方法(默认的是必需实现required),也可以声明一些不一定实现的方法(@ optional)协议是谁遵循谁实现。一个类可以遵循多个协议,一个协议也可以遵循其他协议(多继承)。
2.判断对象是否遵循协议confromsToprotocol,是否实现协议:respondsToSelector.
protocol和继承的区别:1.继承之后默认就有实现,而property只有声明没有实现。2.相同类型的类可以用继承,但是不同类型的类只能使用property。3.property可以用于存储方法的声明,可以将 多个类中共同的方法抽取出来,以后让这些类遵守协议即可。
3.协议的的应用场景:类型的限制,可以将协议写在数据类型的右边,明确的标注如果想给该变量赋值,那么该对象必须遵守某个协议。
Persong<protocol> *w = [Person new];@property (strong nonatomic) Wife<protocol> *wife;类型限定写在数据类型的右边
1.当A对象想监听B对象的一些变化是,可以使用代理设计模式2.当B对象发生一些事情,想通知A对象的时候,可以使用代理模式。当A对象无法处理某些事情时,想让B对象帮忙处理。

转载于:https://www.cnblogs.com/liumu/p/5236627.html

类目,延展,协议的基本概念相关推荐

  1. objective-c 类目(Category)和延展(Extension)

    类目的基本概念: 如果有封装好的一个类,随着程序功能的增加,需要在类中增加一个方法,那我们就不必在那个类中做修改或者再定义一个子类,只需要在用到那个方法时添加一个该类的类目即可. 1.在类目定义的方法 ...

  2. 大咖分享|李志强:一文详解标签类目体系落地方法与建设价值

    讲师介绍 李志强(莫奈),数澜科技资深数据专家,近10年大数据行业工作经验,先后参与过某大型股份制银行信用卡营销平台建设.时尚集团数据化平台建设项目.长虹数据中台项目等大型集团公司数字化项目,擅长企业 ...

  3. Category(分类/类目)、Protocol(协议)、Extension(扩展/延展)

    Category(分类/类目): 利用Objective-C的动态运行时分配机制,Category提供了一种比继承更为简洁的方法来对class进行扩展,无需创建对象类的子类就能为现有的类添加新方法,可 ...

  4. IOS 高级语法与设计模式5(5.3 协议的基本概念及用法)

    2019独角兽企业重金招聘Python工程师标准>>> 一.协议的基本概念 协议的声明看起来比较类似一个类的接口,不同的是协议没有父类也不能定义变量.协议是一种特殊的程序设计结构,用 ...

  5. 淘淘商城第三天—完成商品添加功能 商品类目选择 图片上传 图片服务器搭建 kindEditor富文本编辑器的使用 商品添加功能

    1.实现商品类目选择功能 1.1需求 在商品添加页面,点击"选择类目"显示商品类目列表: 请求初始化树形控件的url:/item/cat/list 1.2 EasyUI tree数 ...

  6. 一文讲透非标品的商品类目设计

    www.pmcaff.com 本文为作者 百转 于社区发布 只要做电商,商品类目设计就是绕不开的一环.好的类目设计能让供需双方更快.更好定义或找到所关心的商品,是整个电商体系的地基,是构建并链接各个模 ...

  7. 基于品类关系,虚拟类目如何建设?

    小叽导读:类目-属性项-属性值体系(简称CPV)是淘宝建设中非常重要的基石,在商品的发布.管理,以及搜索场景下都大量应用.比如每个商品都有自己的类目.以及属性,而且需要发布在适合自己的类目下,才能够方 ...

  8. 微信小程序申请医疗-就医服务类目解决办法

    微信小程序申请医疗-就医服务类目申请解决办法 选择方式为提供合同方式 由于我们公司不是医院这种类型的公司,所以没有卫生部的批文,只能选择这一种方式. 准备审核需要的资料 承诺函 合同首尾页拍照,然后通 ...

  9. 标签类目体系(面向业务的数据资产设计方法论)-读书笔记8(完结)

    第8章 果:价值.经验分享 1.7点价值总结 采用标签方法论形成的数据资产,较传统方式开发的数据指标,具有更高的应用价值与影响意义.标签价值主要体现在:串联.业务友好.全息刻画.可复用.可运营.创新场 ...

最新文章

  1. 实验室管理系统LIMS有没有好的企业推荐?
  2. 微信小程序引入字体图标
  3. 由萧何出名想到的……数据中心运维思考
  4. Py之Data Base:Python和数据库的那些嘻嘻哈哈事详细攻略
  5. html中两个冒号,css中双冒号和单冒号区别
  6. dojo Quick Start/dojo入门手册--面向对象,定义Class
  7. WCF从理论到实践(4):路在何方
  8. POJ 1077 Eight
  9. 河北体检系统诚信企业推荐_应用多的隔膜计量泵价格诚信企业推荐
  10. 学会这两招,快速突出图表重点,让老板眼前一亮
  11. HTML5+CSS:左边导航栏,右边是对应的文本区域
  12. python元祖切片_Python
  13. myql GROU_CONCAT 与FIND_IN_SET查询结果为空问题解决
  14. struts2架构网站漏洞修复详情与利用漏洞修复方案
  15. 我的世界服务器无限耐久护甲,我的世界无限耐久指令 | 手游网游页游攻略大全...
  16. 劳务派遣能解决哪些用工难题?企业关心的都在这里!
  17. 把你的Windows Media Player 打造成全能的播放器
  18. Java与模式之建造者模式详解
  19. 从开源小白到 Apache Member,阿里技术小哥的成长之路
  20. 如何用GIMP绘制gif图,我用5个小时制作了一个CSDN的点关注动态图,现在都教给你5分钟学会。

热门文章

  1. 简单入门——深度学习笔记(Part II)
  2. Tomcat相关目录及配置文件总结
  3. NuGet学习笔记(2) 使用图形化界面打包自己的类库[转]
  4. Latex应用和资源
  5. android音频系统之AudioTrack的使用
  6. Android---手动创建线程与GUI线程同步(二)
  7. Dilated/Atrous conv 空洞卷积/多孔卷积
  8. 双指针算法基本原理和实践
  9. 浅谈Mybatis的一级缓存和二级缓存
  10. SDNU 1300.转圈游戏(快速幂)