import java.io.*;public class Forest implements Serializable 
{
private Tree tree = new Tree();
public static void main(String[] args)
{
Forest f = new Forest();
try
{
FileOutputStream fs = new FileOutputStream("Forest.Ser");
ObjectOutputStream OS = new ObjectOutputStream(fs);
OS.writeObject(f);
OS.close();
}
catch(Exception ex)
{
ex.printStackTrace();
}
}}
class Tree {}为什么运行上面代码会出异常。。?java.io.NotSerializableException: Tree
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1369)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1341)
at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1284)
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1073)
at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
at Forest.main(Forest.java:14)

要把类Tree也实现Serializable 运行才通过,谁能解释下Serializable (序列化)?
还有API上 NotSerializableException这句话“当实例需要具有序列化接口时,抛出此异常”什么意思??