10 .Net学习第十天
10.1 设计模式
设计模式是设计项目的方式
10.2 简单工厂设计模式
使用一个父类屏蔽子类对象的差异以达到工厂-子类-父类-客户的一个设计模式
工厂通过客户的反馈给予相应的子类
10.3 值传递和引用传递
值传递的过程中,系统会在栈中复制要传递的值,将该值传递到要传递的空间内,覆盖要传递的空间内的值,重新对该值类型赋值时,将会把原先的值覆盖
引用传递的过程中,系统会复制这个引用对象在栈中存放的地址值,在重新对引用类型进行赋值时,会对堆中存储的对象的值重新赋值,两个引用对象会同时改变
10.4 序列化和反序列化
序列化:将对象转换为二进制
反序列化:将二进制转换为对象
作用:传输数据
- 用关键字[Serializable]将这个类标记为可序列化类
- 用BinaryFormatter类实例化一个对象
- 使用BinaryFormatter类中的Serialize(流,序列化对象)方法序列化要序列化的对象
- 使用BinaryFormatter类中的Deserialize(流,序列化对象)方法反序列化、
10.5 部分类
在同一个命名空间下可以用关键字partial定义部分类
在部分类中不能存在重复的定义
同名的部分类被视为同一个类
10.6 密封类
关键字sealed可以将类定义为密封类
密封类不能被其他类继承,可以继承于其他类
10.7 接口
当一个类需要调用多个类中的方法时,可以用关键字interface定义一个接口给该类继承
接口就是一个规范、能力
[public] interface 接口名(I...able)
{
方法;
}
接口中的成员不允许添加访问修饰符,默认是public
接口内的成员不能有方法体
接口不能包含字段
继承接口后,类内必须实现接口内的所有成员
接口中只能有方法、属性、索引器、事件,不能有字段、构造函数
接口与接口之间可以继承,并且可以多继承
接口并不能去继承一个类,而类可以继承接口
类可以同时继承一个类并实现多个接口
当方法重命名时,需要显式调用接口
10.8 MD5加密
调用MD5类中的方法对字符串进行加密