如果要让类能够被序列化,则就要实现Serializable
package box;
import java.io.*;
public class Box implements Serializable{
private int width;
private int height;
public void setWidth(int w)
{
width = w;
}
public void setHeight(int h)
{
height = h;
}
public static void main(String[] args) {
Box myBox = new Box();
myBox.setHeight(20);
myBox.setWidth(50);
try {
FileOutputStream fs = new FileOutputStream("box.txt");
ObjectOutputStream os = new ObjectOutputStream(fs);
os.writeObject(myBox);
os.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
###如果类中的某个变量不需要实例化,那就可以将它标记为transient,例如
package box;
import java.io.*;
public class Box implements Serializable{
transient int width;
…..//还有很多代码
}
“`
当变量被标记为transient后,该变量就不会被序列化!