public class Foo implements java.io.Serializable {
private int v1;
private static double v2;
private Loan v3 = new Loan();
}
选项:
A. Foo 的实例可以被序列化,因为 Foo 实现了 Serializable。
B. Foo 的实例无法序列化,因为 Foo 包含不可序列化的实例变量 v3。
C. 如果将 v3 标记为瞬态,则 Foo 的实例是可序列化的。
D. b 和 c
答案:D
说明:一个对象可能不会被序列化,即使它的类实现了java.io.Serializable
,因为它可能包含不可序列化的实例变量。
现在我的问题是:
据我所知,瞬态用于关闭序列化。那么在这种情况下transient是如何帮助我们序列化foo的呢?