从Multidiminsonal数组java

时间:2017-10-08 11:10:00

标签: java arrays object multidimensional-array reflection

我试图使用Reflection从2d阵列中访问对象。我可以抓住持有数组的对象,如Matrix [] [] drawMatrix = getDrawMatrix();使用反射。

虽然我无法滚动每个对象以从中获取信息,例如drawMatrix [2] [4] .getID();

这是我用来抓取对象的Reflection类的代码

public static Object getClassObject(ClassLoader clsLoader, String clazz, String field, Object instance){
    try {
        Class<?> clz = clsLoader.loadClass(clazz);
        Field _field = clz.getDeclaredField(field);
        _field.setAccessible(true);
        return _field.get(instance);
    } catch (Exception e){
        e.printStackTrace();
    }
    return null;
}

目前我已经尝试了以下内容,但无济于事。

 Object matrixObj =  Reflection.getClassObject(Client.classLoader, "renderCls", "drawMatrix", null);
            int sizeArray = Array.getLength(matrixObj);
            for(int i=0;i<sizeArray;i++){
                Object matrixRowI = Array.get(matrixObj, i);

                System.out.println("Matrix_Row_" + i + ": " + Array.getLength(matrixRI));
            }

我收到零。

如何做到这一点?非常感谢您的时间和精力!

0 个答案:

没有答案