问答详情
源自:6-2 transient及ArrayList源码分析

反序列化String

如果是private transient String stuPhone;

反序列化的时候怎么写呢?

private void readObject(java.io.ObjectInputStream s)

    throws java.io.IOException, ClassNotFoundException {

s.defaultReadObject();

this.stuPhone=s.read???;

}

提问者:软222 2014-12-28 13:52

个回答

  • 阿猫阿狗汪喵喵
    2016-02-16 14:23:01

    private void writeObject(java.io.ObjectOutputStream s)throws java.io.IOException{

    s.defaultWriteObject();//把JVM能默认序列化的元素进行序列化操作

    s.writeObject(name);

    s.writeInt(age);//自己完成age的序列化

    }

    private void readObject(java.io.ObjectInputStream s)throws java.io.IOException,ClassNotFoundException{

    s.defaultReadObject();//把JVM能默认反序列化的元素进行反序列化操作

    this.name = (String) s.readObject();

    this.age = s.readInt();

    }



  • 好帮手慕珊
    2014-12-29 09:54:29

    对,你的写法是对的。