如果没有,也许你可以告诉我原因。
当我的类被序列化时,我得到 NotSerializableException。
在类中,我将这个匿名类传递给一个方法:
new org.apache.commons.collections.Closure() {
...
};
这个问题仍然没有答案。我想知道有没有实现Serializable的标准Closure接口(interface)
最佳答案
类中的所有引用也必须是可序列化类型,甚至是闭包类型。它是一个接口(interface)吗?它必须扩展 java.io.Serializable 接口(interface)。
即:
interface Closure extends java.io.Serializable {
...
}
class YourClass implements java.io.Serializable {
private Closure closure;
...
public void setClosure(Closure closure) {
this.closure = closure;
}
}
...
private static void main(String[] args) {
YourClass y = new YourClass();
y.setClosure(new Closure() {
...
});
...
编辑,澄清。 :)
关于java - 是否有可序列化的标准闭包接口(interface)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/685000/