实现可序列化接口的Java类

实现可序列化接口的Java类,java,serialization,Java,Serialization,我需要一个实现可序列化的类的列表。 您还可以告诉我实现该接口的类是什么吗?您可以找到所有实现类的完整列表。 如果需要通过编程进行检查,可以使用instanceof操作符检查对象是否是可序列化接口的实例 子接口列表并不是实际实现接口的所有类的列表。在Java API中,大多数类实现可序列化(是完整列表)。需要实现可序列化的类。您可以使用IDE在项目中查找接口的所有实现者。如果您使用Eclipse,则在您看到“可序列化”的任何位置(如下面的类定义中): 单击Serializable,以便 文字标记

我需要一个实现可序列化的类的列表。
您还可以告诉我实现该接口的类是什么吗?

您可以找到所有实现类的完整列表。

如果需要通过编程进行检查,可以使用
instanceof
操作符检查对象是否是
可序列化
接口的实例


子接口列表并不是实际实现接口的所有类的列表。

在Java API中,大多数类实现可序列化(是完整列表)。需要实现可序列化的类。您可以使用IDE在项目中查找接口的所有实现者。

如果您使用Eclipse,则在您看到“可序列化”的任何位置(如下面的类定义中):

  • 单击
    Serializable
    ,以便 文字标记在单词中
  • 命中控制+T

这应该需要一分钟,因为这是一个非常流行的接口,但它将显示在类路径上可以找到的所有类,这些类实现了
Serializable

实现
Serializable
有效地使类和子类成为公共API的一部分。通过单击Javadoc输出中的链接,您至少可以看到一些可序列化的类。其中一些类本身不是公共的/受保护的(在API文档中,它们没有指向类文档的链接)。可序列化的匿名内部类似乎不会出现,尽管有几个
this$0
字段

快速的答案是:任何您想要存储以供以后使用的类

这包括数据包装器(整数、字符串、字符等)、数据类和集合等

但是,只有集合中的项可序列化时,集合才可序列化


此外,还有第二个接口,用于将数据写入某种外部接口的类,只引用存储在序列化流中的所述项。

您能解释一下为什么需要这个列表吗?我的故障表上的指针好像断了。哈哈。也许他/她只是好奇。你也可以使用菜单:导航>快速类型层次结构。你为什么要否决这个?它给出了类路径上实现可序列化的所有类的完整列表,这是一个比上面给出的更全面的列表。我猜你得到了反对票,因为你建议创建一个类只是为了能够选择可序列化接口。我建议通过按Ctrl+Shift+T访问该界面,并在过滤器框中键入Serializable。在那之后,您可以点击上面提到的Ctrl+T在浮动小部件中获取类层次结构,或者点击F4在单独的视图中获取类层次结构。我并不想暗示这是打开类型层次结构的唯一方法——我希望它能够简单明了地看到它是如何实现的。最初的问题是“实现可序列化的类的列表”。什么名单?JDK中的序列化文件?您刚刚继承的大量代码中的可序列化文件?这两种解释都是合理的,学习如何在这两种情况下查找信息是有帮助的。序列化不适合长期存储。仅用于短期用途,如通信。实现Externalizable的类将其外部化状态存储在序列化流中。serialisabke类和exrernalisable类之间的区别在于serialiser负责serialisable类的流格式,但externalisable类实现它们自己的格式。
import java.io.Serializable;

public Foo implements Serializable {

}