NSCoding 的作用
2015-12-26 10:07
225 查看
有时候我们在定义一个模型类的时候,经常要继承NSCoder这个协议,具体它有什么作用了?
NSCoding首先是一个协议,类继承它,此类的实例才能被编码(encode)和译码(decode),继承了这个类,也就实现两个方法
1.initWithCoder(NSCoder:coder)//从coder中读取数据,保存到相应的变量中,即反序列化数据
2.encodeWithCoder(NSCoder:coder)//读取实例变量,并把这些数据写到coder中去。序列化数据
例如下图
注意:还有一个抽象类(NSCoder)与其区别,NSCoder不能被实例化,但是可以被继承,有两个方便的实例子类。可以直接只用器归档和解档
1.NSKeyedUnarchiver 从二进制流读取对象。
2.NSKeyedArchiver
把对象写到二进制流中去
NSCoding首先是一个协议,类继承它,此类的实例才能被编码(encode)和译码(decode),继承了这个类,也就实现两个方法
1.initWithCoder(NSCoder:coder)//从coder中读取数据,保存到相应的变量中,即反序列化数据
2.encodeWithCoder(NSCoder:coder)//读取实例变量,并把这些数据写到coder中去。序列化数据
例如下图
注意:还有一个抽象类(NSCoder)与其区别,NSCoder不能被实例化,但是可以被继承,有两个方便的实例子类。可以直接只用器归档和解档
1.NSKeyedUnarchiver 从二进制流读取对象。
2.NSKeyedArchiver
把对象写到二进制流中去
相关文章推荐
- ural 1146. Maximum Sum
- 使XML序列化器生成XML文件
- Effective C++ 条款24
- IO redirect
- cmd del命令 文件删除
- java 打包下载文件
- iOS 对初学者极右帮助的博客网址和网址
- jQuery file upload file 总结
- Android Volley完全解析
- 删除txt文件每行第一(n)个空格前内容的方法
- BTS PenTesting Lab - A3 XSS
- ural 1145. Rope in the Labyrinth
- 关于Android LayoutParams的总结
- Red and Black 深搜问题
- ural 1145. Rope in the Labyrinth
- Android checkbox和radiobutton 以及Toast和AlertDialog的使用
- 生成随机密码
- iOS当设置TableView为Group时如何隐藏第一行的间隔
- MFC进度条编程控制
- 从itms-services协议中获取ipa的下载地址