比如
public interface Itool
{
void dosth();
}
public class Person
{
public Itool tool
{
get;
set;
}
public void work()
{
this.tool.dosth();
}
}
这个Person类无法序列化,因为其中tool用的是接口来声明的
因为项目中用到的是spring.net,所以大量成员变量是用interface来声明的,通过依赖注入来赋值的,请问要把这样的一个类序列化,怎么做到,谢谢?
------解决方案--------------------
接口是抽象的,是不能被实例化的,序列化的时候是必须有具体的实现才行。可以实现序列化的接口,自定义序列化方法。
------解决方案--------------------
类需要标记可序列化
接口属性必须实例化
------解决方案--------------------
Person 标记 [Serializable], tool必须实例化才可以