Вопрос

Какой полевой дескриптор для объекта [] [] в дескрипторе метода? Скажем, существует класс 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;

Можете ли вы предоставить больше контекста?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top