Java:静态瞬态字段

2022-08-31 19:59:09

我刚刚发现在Java中你可以声明一个字段“静态瞬态” - 编译器不会抱怨。这似乎没有任何用处,因为众所周知,静态字段没有序列化。

但我想知道,是否真的存在“静态瞬态”字段有用的情况?


答案 1

不 - 你自己说过,静态字段不是序列化的。

有点奇怪的是,编译器允许你这样做。


答案 2

在大多数情况下,它没有用。静态字段确实不会由默认序列化程序序列化。

但是,可以通过反射来检测场。如果有人编写了自己的序列化程序,并且他还想序列化静态字段,那么他可能会考虑关键字并跳过该特定字段的序列化。statictransienttransient

PS:这个答案是为了完整性而发布的,并且基于Peter Lawrey的评论。归功于他。