gpt4 book ai didi

java - Eclipse 无法识别传递扩展泛型类

转载 作者:行者123 更新时间:2023-12-02 05:44:53 25 4
gpt4 key购买 nike

在我的项目中,我有一个抽象的自定义对象:

public abstract class CustomObject {
//abstract class goodness
}

在另一个类中,我使用了一些扩展 CustomObject 的不同类,并编写了一个方法,该方法可以将扩展它的特定类作为参数,填充公共(public)字段,并将其作为结果返回。

该方法现在看起来像这样:

public <T> T setCommonProperties( Class<T extends CustomObject> clazz, Identifier ident ) {
CustomObject populate = clazz.newInstance();
//populate populate
}

这看起来与我在互联网上搜索时发现的内容是正确的,但 Eclipse 将 extends 标记为不正确。当我将鼠标悬停在扩展上时,它会给我 token “extends”,预期的语法错误

有人知道为什么 eclipse 会这样做吗?

最佳答案

这是一个 Java 错误; Eclipse 正确地将其标记为错误。您的代码具有不正确的 Java 泛型语法。 extends 上限属于开头的声明,而不是类型参数的使用。尝试一下

public <T extends CustomObject> T setCommonProperties( Class<T> clazz, Identifier ident )

关于java - Eclipse 无法识别传递扩展泛型类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24168718/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com