java - 如何在 NotSerializableException 中识别匿名内部类

标签 java anonymous notserializableexception

我在尝试调试 NetBeans 中的应用程序时收到以下错误消息:

java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: board.Board$1

在调试过程中,我不得不在许多类中插入“implements Serializable”,因为在读取存储大对象的文件的过程中出现了异常。这并不困难,因为需要注意的类已经从异常消息中清楚了。让我震惊的是明显的匿名内部类“Board$1”。我一辈子都无法确定导致问题的“Board”来源。我该怎么做?

因为这是调试实践的问题而不是代码的细节(我认为),所以我没有包含它,但如果有帮助,我可以很容易地添加它。

最佳答案

Board$1Board.java 中遇到的第一个匿名类。例如:

class Board {
  public static void main(String[] args) {
    new Object() {}; // Board$1
    new Object() {}; // Board$2
  }
}

使用像 Eclipse 这样的 IDE,很容易在大纲 View 中发现那些匿名类。我相信 NetBeans 也有类似的观点:

enter image description here

关于java - 如何在 NotSerializableException 中识别匿名内部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12932079/

相关文章:

Matlab:使用 fplot 绘制多个匿名函数

java使用匿名类排序

c++ - C++ 中的匿名对象以及它们如何在运行时共享?

Java Serializable 和 lambda 表达式

java - 是什么导致 Tomcat 7 中出现 NotSerializableException?

java - 数组对象方法不起作用?

java - 使用 Mockito 在子类中模拟父类

java - 当只有子类实现可序列化时,序列化如何工作

Java 程序用完 RAM 但不是真的

java - Titan DB 中的顶点 ID 更新