将泛型类型对象写入java文件

将泛型类型对象写入java文件,java,file,object,generics,Java,File,Object,Generics,有可能吗?我以后需要能够读取该文件。 我打算做的示例(但由于E不可序列化而无法工作): private void writeEvent(ObjectOutputStream out,E obj)抛出IOException{ out.writeObject(新custEvent(obj)); } 类custEvent实现可序列化{ 私人电子商务; 私人日期; 公共事件(E obj){ obj=obj; 日期=新日期(); } } 为什么不在E的通用参数化中使用上限 例如: private <

有可能吗?我以后需要能够读取该文件。 我打算做的示例(但由于E不可序列化而无法工作):

private void writeEvent(ObjectOutputStream out,E obj)抛出IOException{
out.writeObject(新custEvent(obj));
}
类custEvent实现可序列化{
私人电子商务;
私人日期;
公共事件(E obj){
obj=obj;
日期=新日期();
}
}

为什么不在
E
的通用参数化中使用上限

例如:

private <E extends Serializable> void writeEvent(ObjectOutputStream out,E obj) {
  // etc.
}
private void writeEvent(ObjectOutputStream out,E obj){
//等等。
}
这里的混淆是,
Serializable
是一个接口,不能通过类进行“扩展”(但正如Thomas所说,可以通过其他接口进行扩展),但上限仍然有效


当然,这意味着您的
E
s将需要实现
Serializable
,或者实现一个扩展
Serializable

的接口。您在这里实际想做什么?保存组件并将其单击到文件的时间。其他接口可以扩展接口;)@托马斯:真的!让我重新表述:)
private <E extends Serializable> void writeEvent(ObjectOutputStream out,E obj) {
  // etc.
}