为什么transient
不能通过使用注释而不是引入关键字来解决?
似乎transient关键字并没有真正为语言提供任何本机功能,并且似乎更像语法,可以防止意外序列化。
我想念什么吗?
答案 0 :(得分:4)
Java transient keyword是在第一个Java版本中添加的,而Annotations是在1.5版本中后来添加的
实际上暂时使用ad hoc annotation mechanism:
Java平台一直具有各种临时注释机制。例如,transient修饰符是一个临时注释,指示序列化子系统应忽略该字段
请注意,Scala具有@transient且也易失:
@transient标记字段为非持久性;这等效于Java中的瞬时修饰符。
@volatile标记一个可以在程序控制范围之外更改其值的字段;这等效于Java中的volatile修饰符。
答案 1 :(得分:2)
根据上面的注释,transient关键字比注解早。您可以使用AOP创建自己的标记,并在要使类成员成为瞬态的任何地方进行注释,尽管您的标记在后台仍将使用Transition关键字。