1 / 21
文档名称:

c序列化与反射.ppt

格式:ppt   大小:2,621KB   页数:21
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c序列化与反射.ppt

上传人:文库新人 2018/12/2 文件大小:2.56 MB

下载得到文件列表

c序列化与反射.ppt

相关文档

文档介绍

文档介绍:回顾
对自定义类的对象排序,需要实现哪个接口?
比较两个对象使用哪个接口?
理解序列化/ 反序列化概念
能够使用序列化/反序列化保持和恢复对象状态
理解反射的概念
理解程序集的概念
本章目标
扩展配置信息
class Profile
{
public Profile() { }
//频道集合
public List<FeedBase> Feeds = new List<FeedBase>();
//...
//代理服务器信息
public bool EnableProxy;
public string ProxyName = null;
public string ProxyPort = null;
public string ProxyUserId = null;
public string ProxyUserPwd = null;
//系统语言
public UILanguage UILanguage;
}
修改Save和Load方法
//写入是否配置代理服务器
(());
//…写入增加的配置信息
1
2
//读入是否配置代理服务器
= (());
//读入代理服务器IP
= ()
修改保存配置信息的类
扩展的麻烦
添加更多的配置信息
需要编写大量重复繁琐的代码
每次增加配置信息都要修改
如何避免频繁的修改Save/Load方法?
神奇的方式
[Serializable]
abstract class FeedBase
存储信息的类都加入该标记
using ;
下面的类引入一个命名空间
Profile
FeedBase
RssFeed
AtomFeed
演示示例1 MyNewsReader
public void Save()
{
fileStream = new FileStream("", );
BinaryFormatter bf = new BinaryFormatter();
(fileStream, Profile);
();
}
public void Load()
{
fileStream = new FileStream("", );
BinaryFormatter bf = new BinaryFormatter();
Profile = (Profile)(fileStream);
();
}
修改Save和Load方法
这种方式称为序列化与反序列化
什么是序列化
Profile对象
界面语言:英语
RssFeed对象
存储
介质
存储
序列化是将对象的状态存储到特定存储介质中的过程

代理服务器
特性
[Serializable]
abstract class FeedBase
标识这个类是可序列化的
可序列化就是这个类的一个特性
描述性关键字
对程序中的元素如:类、字段、方法、属性
命名时以Attribute结尾: SerializableAttribute
使用时省略Attribute
public sealed class SerializableAttribute
特性其实是一个类
class Program
{
[Obsolete("不要使用旧的方法, 请使用新的方法", true)]
static void Old() { }
static void New() { }
public static void Main()
{
Old();
}
}
演示示例2 MyAttribute
使用序列化
fileStream = new FileStream("", );
BinaryFormatter bf = new BinaryFormatter();
(fileStream, Profile);
[Serializable]
abstract class FeedBase
要存储的对象标记为可序列化,包括他的父类和属性的类
使用二

最近更新

2024年齐齐哈尔理工职业学院马克思主义基本原.. 13页

网络拓扑结构优化-第3篇 35页

美术与摄影产业政策解读 38页

2025年上海市(69所)马克思主义基本原理概论.. 13页

2025年上海海洋大学马克思主义基本原理概论期.. 12页

2025年上海震旦职业学院马克思主义基本原理概.. 12页

2025年中北大学马克思主义基本原理概论期末考.. 12页

2025年中国矿业大学(北京)马克思主义基本原.. 12页

2025年中牟县幼儿园教师招教考试备考题库含答.. 30页

2025年临泉县招教考试备考题库带答案解析 30页

2025年久治县招教考试备考题库含答案解析(夺.. 30页

2025年乐山职业技术学院单招职业技能考试题库.. 44页

高效能量管理算法开发 33页

2025年云南理工职业学院单招职业技能测试题库.. 43页

2025年云阳县招教考试备考题库带答案解析(夺.. 31页

轨道站点与就业联动 35页

2025年克拉玛依职业技术学院单招职业技能考试.. 44页

2025年兰州职业技术学院马克思主义基本原理概.. 13页

2025年内蒙古建筑职业技术大学马克思主义基本.. 13页

绿色能源在塑料鞋生产中的运用 28页

2025年北京师范大学珠海分校马克思主义基本原.. 12页

2025年南丹县幼儿园教师招教考试备考题库含答.. 30页

2025年南京视觉艺术职业学院单招综合素质考试.. 44页

绿色染料合成路径优化 35页

高精度材质映射在游戏开发中的应用 38页

高效电机材料制备 36页

绩效数据可视化技术-第1篇 35页

绿色供应链管理优化 35页

2025年吉林工业职业技术学院单招职业技能考试.. 45页

2025年吉林通用航空职业技术学院单招职业技能.. 45页