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