我正在构建一个应用程序,我必须在活动之间传递数据。自定义ArrayList
的数据为Object
。因此,每个模型都必须实现Serializable
,然后我必须创建一个Wrapper
来传递数据。
我有这样的事情:
public class DummyJSONModelWrapper implements Serializable{
private List<DummyJSONModel> dummyJSONModel;
public DummyJSONModelWrapper(List<DummyJSONModel> dummyJSONModel) {
this.dummyJSONModel = dummyJSONModel;
}
public List<DummyJSONModel> getDummyJSONModel() {
return dummyJSONModel;
}
}
我的问题是如何使我传递给构造函数的List是通用的,以及getter返回泛型列表?
所以我希望有类似的东西:
public class DummyJSONModelWrapper implements Serializable{
private List<T> dummyJSONModel;
public DummyJSONModelWrapper(List<T> dummyJSONModel) {
this.dummyJSONModel = dummyJSONModel;
}
public List<T> getDummyJSONModel() {
return dummyJSONModel;
}
}
但它不会像这样工作。我该怎么办?
答案 0 :(得分:0)
您应该在类级别声明Generic,如下所示:
public class DummyJSONModelWrapper<T extends DummyJSONModel> implements Serializable{
private List<T> dummyJSONModel;
public DummyJSONModelWrapper(List<T> dummyJSONModel) {
this.dummyJSONModel = dummyJSONModel;
}
public List<T> getDummyJSONModel() {
return dummyJSONModel;
}
}
请参阅Oracle here
中的文档