我们可以调用参数为 java.lang.reflect.Array 的方法吗?

can we call a method having argument as java.lang.reflect.Array?

我对下面使用参数作为 java.lang.reflect.Array.

的代码有疑问
public static void display(java.lang.reflect.Array stringArray) {
    System.out.println(java.lang.reflect.Array.get(stringArray, 1));
}

上面提到的代码将成功编译,但我是否应该编写此方法以及可能的用例是什么?

如果我能写这样的方法,我们怎么能调用这个方法呢we can not instantiate java.lang.reflect.Array而且我们也不能从Classclass引用中得到对象,因为我们可以得到java.lang.reflect.Field 目的。

Array 只是一个助手 class - 请注意 所有 上的方法都是静态的。我不希望有这样的例子。要接受数组 - 和 any 数组,包括 int[] 等 - 你需要让方法接受 Object:

public static void display(Object stringArray) {
    System.out.println(java.lang.reflect.Array.get(stringArray, 1));
}

此时,你可以传递一个String[]作为参数,它会打印出第二个元素。

但是,如果您想要只接受字符串数组,为什么不写:

public static void display(String[] stringArray) {
    System.out.println(stringArray[1]);
}

?现在很清楚你的意图...