Java如何在参数中发送类类型

Java如何在参数中发送类类型,java,Java,我想创建一个方法,该方法可以接受任何类类型并将其发送给另一个方法。然后返回object:Example: private Object getObjectFromData(Object object, String data) { Object o = mapper.readValue(data,Object.class); return o; } 好吧,这很有效。做我想做的事。但要调用此函数,我必须初始化一个空项目:如下所示: final Task t = new Task(

我想创建一个方法,该方法可以接受任何类类型并将其发送给另一个方法。然后返回object:Example:

private Object getObjectFromData(Object object, String data) {
    Object o = mapper.readValue(data,Object.class);
    return o;
}
好吧,这很有效。做我想做的事。但要调用此函数,我必须初始化一个空项目:如下所示:

final Task t = new Task();
Task task = (Task)getObjectFromData(t,data);
是否有可能跳过这一行:

final Task t = new Task();

??感谢您的回复。

实例传递给它:

private Object getObjectFromData(Class clazz, String data) {
    Object o = mapper.readValue(data,clazz);
    return o;
}
并称之为:

Task task = (Task) getObjectFromData(Task.class, data);
Task task = getObjectFromData(Task.class, data);
您还应该使方法通用(不要使用原始类型
Class
,而是使用
Class
),这样就不需要强制转换:

private <T> T getObjectFromData(Class<T> clazz, String data) {

实例传递给它:

private Object getObjectFromData(Class clazz, String data) {
    Object o = mapper.readValue(data,clazz);
    return o;
}
并称之为:

Task task = (Task) getObjectFromData(Task.class, data);
Task task = getObjectFromData(Task.class, data);
您还应该使方法通用(不要使用原始类型
Class
,而是使用
Class
),这样就不需要强制转换:

private <T> T getObjectFromData(Class<T> clazz, String data) {

您不需要
(任务)
cast,这是问题的关键;)@确实是因为
不应理想地用作原始类型。感谢您的快速响应。:)我不熟悉那些普通的东西。但我有点喜欢它们。再次感谢:)您不需要
(任务)
cast,这是问题的关键;)@确实是因为
不应理想地用作原始类型。感谢您的快速响应。:)我不熟悉那些普通的东西。但我有点喜欢它们。再次感谢:)请澄清您的具体问题或添加其他详细信息,以突出显示您所需的内容。正如目前所写的,很难准确地说出你在问什么。请参阅“如何寻求帮助”页面以澄清此问题。@Ferrybig很抱歉,我没有向您说明我的问题。但我不确定我想要什么。请澄清您的具体问题或添加其他详细信息,以突出显示您的确切需要。正如目前所写的,很难准确地说出你在问什么。请参阅“如何寻求帮助”页面以澄清此问题。@Ferrybig很抱歉,我没有向您说明我的问题。但我不确定我想要什么。