3
我有一个简单的类,如下所示。Java:关键字“this”和序列化
我想用这个类实现的所有东西都是将实例序列化为一个字节数组,但我总是得到java.io.NotSerializableException
。
我的代码有什么问题?
是这个只是一个指向调用构造函数而不是实际实例对象时创建的实例的指针?
class XXX {
private String someStr;
public XXX(String someStr){
this.someStr = someStr;
}
public byte[] toByteArray(){
byte[] output = null;
try(ByteArrayOutputStream out = new ByteArrayOutputStream();
ObjectOutputStream stream = new ObjectOutputStream(out)) {
stream.writeObject(this);
output = out.toByteArray();
}catch(Exception e){
}
return output;
}
}
XXX aX = new XXX("some string");
aX.toByteArray();
获取相同的错误... –
我应该工作。看到https://ideone.com/h4uRWL –
我应该提到XXX类是一个嵌套的非静态类,但无论如何,你指出让我指出了正确的方向。谢谢 –