Java 当我对我的类使用Serializable和对Scanner使用transient时,如何解决NullPointerException?
我想知道我需要做些什么来解决这个错误。 由于在我想要序列化的类中使scanner是瞬态的,所以现在我得到了一个nullpointerexception,其中使用了scanner(in)的第一个实例 i、 e in.next() 这是我第一次在工作中使用Serializable。我已经使我所有的顶级类都可以序列化 我还想知道是否需要对我的数据结构(如数组、ArrayList等)做些什么。哪些东西需要标记为瞬态Java 当我对我的类使用Serializable和对Scanner使用transient时,如何解决NullPointerException?,java,nullpointerexception,java.util.scanner,serializable,transient,Java,Nullpointerexception,Java.util.scanner,Serializable,Transient,我想知道我需要做些什么来解决这个错误。 由于在我想要序列化的类中使scanner是瞬态的,所以现在我得到了一个nullpointerexception,其中使用了scanner(in)的第一个实例 i、 e in.next() 这是我第一次在工作中使用Serializable。我已经使我所有的顶级类都可以序列化 我还想知道是否需要对我的数据结构(如数组、ArrayList等)做些什么。哪些东西需要标记为瞬态 当序列化对象时,瞬态字段中的任何帮助值都不会保留。一种解决方案是实现writeObjec
当序列化对象时,瞬态字段中的任何帮助值都不会保留。一种解决方案是实现
writeObject
方法,该方法在对象反序列化后重新初始化瞬态字段,如下所述:
然而,在一个可序列化的类中有一个
扫描器对象听起来有点奇怪。您可能应该将其分为两个类-一个可序列化类,其中包含要序列化的数据,另一个类执行用户界面或文件读取,或者使用扫描仪执行任何操作
谢谢Joe,非常感谢,Dave