警告: 最后一个参数使用了不准确的变量类型的 varargs 方法的非 varargs 调用;
[javac] 对于 varargs 调用,应使用 Java.lang.Object
[javac] 对于非 varargs 调用,应使用 java.lang.Object[],这样也可以抑制此警告
[javac] 对于 varargs 调用,应使用 Java.lang.Object
[javac] 对于非 varargs 调用,应使用 java.lang.Object[],这样也可以抑制此警告
paths = (String[]) sm.getClass().getMethod("getVolumePaths", new Class[ 0 ]).invoke(sm, new Object[]{});// 编译通过
paths = (String[]) sm.getClass().getMethod("getVolumePaths", new null).invoke(sm, new null);// 编译失败
本文探讨了在Java中调用使用不准确变量类型参数的方法时可能出现的问题,并提供了正确的调用方式来避免编译错误及警告。对于 varargs 调用应使用 Java.lang.Object,而非 varargs 的调用则应用 java.lang.Object[] 来抑制警告。

1万+

被折叠的 条评论
为什么被折叠?



