我在netbean中用jframe制作了一个jbutton,我想在单击jbutton时序列化一个对象
错误:java.io.NotSerializableException:javax.swing.GroupLayout
我没有序列化任何布局,但是为什么会有这个错误?
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
getValue1 a =new getValue1();
a.name=jTextField1.getText();
a.ps=jTextField2.getText();
a.type=jComboBox1.getSelectedItem().toString();
try{
FileOutputStream fileOut =new FileOutputStream("C:\\employee.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(a);
out.close();
fileOut.close();
System.out.printf("C:\\employee.ser");
}
catch(IOException i){
i.printStackTrace();
}
}
public class getValue1 implements java.io.Serializable{
public String name;
public String ps;
public String type;
}
最佳答案
如果getValue1(这是一个不好的名称,类不是字段,名称看起来更像Value)是另一个类(它是一个内部类)的声明的一部分,则序列化程序还将尝试序列化父类。
您应该将类移至新的类声明。