Java 使用Kundera在hbase中使用泛型对象类型

Java 使用Kundera在hbase中使用泛型对象类型,java,generics,hadoop,hbase,kundera,Java,Generics,Hadoop,Hbase,Kundera,我正在使用昆德拉定义我的数据模型,该模型将存储在hbase中。有一个名为“Task”的类,它应该有一个通用的提交类型,如下所示: public class Task { ... Object submission; } 提交可以是任何类型,因为我想保持它的通用性 所以我的问题是: 1.上述方法是一种好的做法吗?行吗? 2.实现这一点的最佳方法是什么?拥有泛型类型是个好主意。是的,应该有用。但是,您提供的类型不是泛型的。以下是泛型类型的示例: public class Task&

我正在使用昆德拉定义我的数据模型,该模型将存储在hbase中。有一个名为“Task”的类,它应该有一个通用的提交类型,如下所示:

public class Task {
    ...
    Object submission;
}
提交可以是任何类型,因为我想保持它的通用性

所以我的问题是: 1.上述方法是一种好的做法吗?行吗?
2.实现这一点的最佳方法是什么?

拥有泛型类型是个好主意。是的,应该有用。但是,您提供的类型不是泛型的。以下是泛型类型的示例:

public class Task<T> {
    T submission;

    // You can now use T as a class (but not with `new` or some other things)
    public T getSubmission() { return submission; }
    public void setSubmission(T new) { submission = new; }
    public Task(T t) { setSubmission(t); }
    // etc.
}

有关更多信息,请查看。

您尝试过吗?它起作用了吗?如果这是最好的方法?我不知道。也许你可以试着让提交文件成为一种通用类型?公共类任务{T提交;}
Task<String> stringTask = new Task<String>("hello");