[英]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.