在Java中,瞬态忽略变量还是值?

in Java does transient ignore variable or value?

本问题已经有最佳答案,请猛点这里访问。

Java课程作业:

当变量被放置时,transient将忽略变量或只忽略变量的值。

测试这个。

我如何测试这个?


做一些类似的事情:

1
2
3
4
5
6
7
8
public class Test1 implements Serializable {
    private long longValue;
}

public class Test2 implements Serializable {
    private long longValue;
    private transient int intvalue;
}

现在将每个实例序列化到磁盘,如果大小相同,那么您就知道瞬态变量根本没有序列化,否则….


如果一个变量被声明为瞬态变量,它将不会被序列化(不会作为对象的状态存储在字节流中)。

在反序列化时,它将获得默认值。


如果不想序列化变量,请将其声明为瞬态。序列化意味着保存变量的状态。有关详细示例,请参见此处。