Дескриптор поля Java для объекта [] [
-
09-10-2019 - |
Вопрос
Какой полевой дескриптор для объекта [] [] в дескрипторе метода? Скажем, существует класс Foo.bar.Class и метод принимает класс [] [], согласно
http://java.sun.com/docs/books/jvms/second_edition/html/classfile.doc.html#14152.
или спецификация JNI мое понимание в том, что это должно быть
[[Lfoo/bar/Class;
Но это оценивается на массив «[foo.bar.class», который, конечно, триггеры java.lang.NoClassDefFoundError
.
Если «внутренний» массив, вероятно, считается Java.lang.Object, что привело к
[Ljava/lang/Object;
?
Решение
Вы делаете что-то не так, я думаю. Это работает для меня:
package ro.redeul.test;
public class Test {
public static void main(String[] args) throws NoSuchMethodException {
System.out.println("x: " + Test.class.getMethod("method").getReturnType().toString());
}
public Test[][] method() {
return null;
}
}
это печатает x: class [[Lro.redeul.test.Test;
Можете ли вы предоставить больше контекста?
Не связан с StackOverflow