Java 创建返回传入类实例的泛型方法

Java 创建返回传入类实例的泛型方法,java,Java,我在一个类中有以下方法。AbstractModel是由扩展该类的类传入的泛型。该方法当前创建传入类的实例 public AbstractModel newInstance(Class<? extends AbstractModel> clazz){ return injector.getInstance(clazz); } 我想知道我是否可以使用泛型来删除使AbstractModel对象成为Person所必须做的转换。理想的情况是: Person person = em.

我在一个类中有以下方法。AbstractModel是由扩展该类的类传入的泛型。该方法当前创建传入类的实例

public AbstractModel newInstance(Class<? extends AbstractModel> clazz){

    return injector.getInstance(clazz);
}
我想知道我是否可以使用泛型来删除使AbstractModel对象成为Person所必须做的转换。理想的情况是:

Person person = em.newInstance(Person.class);

我不知道这是否可行,因为我没有将Person对象传递给该方法。

您可以将方法签名更改为follow-

public <T extends AstractModel> T newInstance(Class<T> clazz) {
public T新实例(类clazz){

您可以将方法签名更改为以下内容-

public <T extends AstractModel> T newInstance(Class<T> clazz) {
public T新实例(类clazz){

是胡萝卜中必须作为参数进入方法的部分,然后是另一个T,返回的类?“<”和“>”符号
声明了一个类型参数
T
,它在泛型方法
newInstance
中有效。我们在方法参数d中使用的是
T
eclaration(
Class clazz
)和返回类型(
T
)。胡萝卜中的部分必须作为参数进入方法,然后是另一个T,返回的类吗?“<”和“>”符号
声明了一个类型参数
T
,它在泛型方法
newInstance
中有效。我们在方法参数声明中使用的是
T
选项(
Class clazz
)和返回类型(
T
)。