OC阅读笔记十:匿名对象
2016-04-02 23:03
190 查看
协议可以在某种程度上提供匿名类型,当接口背后有多个不同的实现类,又不想声明指定哪个类时,可以使用这种方法.因为有时候这些类会变,有时候又无法容纳于标准的类继承体系中,不能以某个公共基类来统一标示.
在一些情况下,对象的类型并不重要,重要的是对象有没有实现某些方法,可以用"匿名类型"来表达该概念.
在开发后续版本时,如果之前使用了"匿名对象"概念,则无需改变公有API,即可切换实现类.
如果想要隐藏API中的实现细节,也可以使用"匿名对象".
-(void)setObject:(id)object forKey:(id<NSCopying>)key 这个方法中,key就可以视为"匿名对象",它可以是任何类型,只要遵守NSopying协议就好.
在一些情况下,对象的类型并不重要,重要的是对象有没有实现某些方法,可以用"匿名类型"来表达该概念.
在开发后续版本时,如果之前使用了"匿名对象"概念,则无需改变公有API,即可切换实现类.
如果想要隐藏API中的实现细节,也可以使用"匿名对象".
-(void)setObject:(id)object forKey:(id<NSCopying>)key 这个方法中,key就可以视为"匿名对象",它可以是任何类型,只要遵守NSopying协议就好.
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- AS3自写类整理笔记 ClassLoader类第1/2页
- AS3自写类整理笔记 Dot类第1/2页
- DB2新手使用的一些小笔记:新建实例、数据库路径不存在、客户端连接 .
- perl脚本学习指南--读书笔记
- 《C++ primer plus》读书笔记(三)
- 《C++ primer plus》读书笔记(二)
- jquery 笔记 事件
- VPS 配置优化笔记
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用中UISearchDisplayController搜索效果的用法
- IOS开发环境windows化攻略