序列化变量的虚拟值

时间:2013-04-25 06:26:39

标签: java string serialization integer transient

为什么在Java中为瞬态变量显示默认值为零?

它如何知道0的值integernull的{​​{1}}?

5 个答案:

答案 0 :(得分:3)

它知道因为那是how it's specifiedint的默认值为0,String的默认值为空。

答案 1 :(得分:1)

来自DOCS

  

声明字段时并不总是需要指定值。声明但未初始化的字段将由编译器设置为合理的默认值。一般来说,此默认值为零或null,具体取决于数据类型。

答案 2 :(得分:0)

int的默认值为0 String为空

答案 3 :(得分:0)

字段的默认值由JLS定义。使其成为瞬态会给提示它不会被设置,因此具有默认值。

答案 4 :(得分:0)

  

如何知道整数值为0,String为null?

因为那是default, defined in the Java Language Specification