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);