接口变量如何序列化?
现有一个内部接口如下
[code="java"]
public interface GetDataInterface extends Serializable {
public Object getData(K key);
}
[/code]
new接口的变量并序列化如下
[code="java"]
GetDataInterface getData = new GetDataInterface() {
private static final long serialVersionUID = 1L;
@Override
public Object getData(String key) {
return null;
}
};
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("a.obj"));
out.writeObject(getData);
out.close();
[/code]
始终报ioexception如下
[code="xml"]
IOException java.io.NotSerializableException:
[java.io.ObjectOutputStream.writeObject0(Unknown Source), java.io.ObjectOutputStream.defaultWriteFields(Unknown Source), java.io.ObjectOutputStream.writeSerialData(Unknown Source), java.io.ObjectOutputStream.writeOrdinaryObject(Unknown Source), java.io.ObjectOutputStream.writeObject0(Unknown Source), java.io.ObjectOutputStream.writeObject(Unknown Source)]
[/code]
如果建一个类继承自GetDataInterface再实例化该类的变量进行序列化不会出现问题,问下是不是像上面的接口变量无法进行序列化,有没有办法进行序列化(不新建类继承接口)