[英]Eclipse not recognizing passing an extended generic class
在我的项目中,我有一个抽象的自定义对象:
public abstract class CustomObject {
//abstract class goodness
}
在另一个类中,我使用了几个扩展CustomObject的类,并编写了一种方法,该方法可以将扩展它的特定类作为参数,填充公共字段,然后将其吐出作为结果。
该方法现在看起来像这样:
public <T> T setCommonProperties( Class<T extends CustomObject> clazz, Identifier ident ) {
CustomObject populate = clazz.newInstance();
//populate populate
}
这看起来与我在互联网上找到的东西是正确的,但是日食将这些extends
标记为不正确。 当我将鼠标悬停在扩展上时Syntax error on token "extends", , expected
它会给我Syntax error on token "extends", , expected
。
有谁知道为什么日食会这样做?
这是一个Java错误。 Eclipse正确地将其标记为错误。 您的代码具有不正确的Java泛型语法。 extends
上限是开头的声明,而不是type参数的使用。 尝试
public <T extends CustomObject> T setCommonProperties( Class<T> clazz, Identifier ident )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.