繁体   English   中英

创建通用方法,该方法返回传入的类的实例

[英]create generic method that returns instance of class passed in

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

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

    return injector.getInstance(clazz);
}

目前,我必须这样做:

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

我想知道是否可以使用泛型来删除使AbstractModel对象成为Person所必须执行的转换。 理想的情况是:

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

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

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

public <T extends AstractModel> T newInstance(Class<T> clazz) {

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM