Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/367.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 类型不匹配:无法从类转换<;捕获#1-of?>;上课<&燃气轮机;[]_Java_Reflection_Syntax Error - Fatal编程技术网

Java 类型不匹配:无法从类转换<;捕获#1-of?>;上课<&燃气轮机;[]

Java 类型不匹配:无法从类转换<;捕获#1-of?>;上课<&燃气轮机;[],java,reflection,syntax-error,Java,Reflection,Syntax Error,以下错误消息是什么意思: Type mismatch: cannot convert from Class<capture#1-of ?> to Class<?>[] 类型不匹配:无法从类转换为类[] 代码如下: Class<?>[] encoderClass; Class<?>[] encoderClasses = new Class<?>[] { E

以下错误消息是什么意思:

Type mismatch: cannot convert from Class<capture#1-of ?> to Class<?>[]
类型不匹配:无法从类转换为类[]
代码如下:

            Class<?>[] encoderClass;
            Class<?>[] encoderClasses = new Class<?>[] {
                Encoder1.class,
                Encoder2.class,
                Encoder3.class
            };

            for(int i=0; i<encoderClasses.length; ++i) {
                encoderClass = encoderClasses[i]; // <------ error is here
            }
Class[]encoderClass;
类[]编码器类=新类[]{
编码器1.class,
编码2.class,
Encoder3.class
};

对于(inti=0;i您需要类中的数组

您应更改以下内容:

Class<?>[] encoderClass;
Class[]encoderClass;
致:

classencoderclass;

您正试图将单个类元素分配给类数组(根据错误消息的不同类型)。请改为在
for
循环中分配每个单独的元素

encoderClass[i] = encoderClasses[i];
确保数组已初始化,以避免赋值中出现
NPE

Class<?>[] encoderClass = new Class<?>[3];
Class<?>[] encoderClass = new Class<?>[3];
encoderClass = Arrays.copyOf(encoderClasses,  encoderClasses.length);