gpt4 book ai didi

java - 如何制作一个 Class< 类型的数组?扩展一些东西>?

转载 作者:塔克拉玛干 更新时间:2023-11-02 18:59:01 26 4
gpt4 key购买 nike

我有以下代码,但无法编译:

Class<? extends something>[] classes = new Class<? extends something>[5]();

为什么这行不通?有办法解决这个问题吗?我也试过 Class<?>这也不起作用。

最佳答案

答案与 Array Creation Expression 有关.

规则明确指出:

The rules above imply that the element type in an array creation expression cannot be a parameterized type, other than an unbounded wildcard.

这就是为什么您的上述代码永远无法编译的原因。事实上,以下编译时错误消息显示(示例):

/**
*
*/


/**
* @author The Elite Gentleman
*
*/
public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Class<? extends Exception>[] classes = new Class<? extends Exception>[5];
}

}

Test.java:17: generic array creation

解决方案(有效,如果您遵循上述规则):

Class<? >[] classes = new Class<?>[5];

上面的行编译。

希望对您有所帮助。

关于java - 如何制作一个 Class< 类型的数组?扩展一些东西>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9416370/

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