- main(String[] ars)
- {
- //Array类中的public static Object newInstance(Class<?> componentType,int... dimensions)的用法
- int[][] test= new int[][]{{4,5,6},{1,2,3}};
-
- Object o = Array.newInstance(test.getClass(), 1,2,3);
- getDimensionsOfArray(o);//出错了! //////////////
- }
- //遍历数组深度
- private static void getDimensionsOfArray(Object o) {
- if(o.getClass().isArray())
- {
- System.out.println(":"+Array.getLength(o)); ///////////92行
- Object tpmp = Array.get(o, 0);
- getDimensionsOfArray(tpmp); ///////////////////98行
-
- }else{
- System.out.println("整个数组已经遍历完了:");
- }
- }
复制代码 错误:
:1
:2
:3
Exception in thread "main" java.lang.NullPointerException
at cn.itcast.day1.ReflectDemo.getDimensionsOfArray(ReflectDemo.java:92)
at cn.itcast.day1.ReflectDemo.getDimensionsOfArray(ReflectDemo.java:98)
at cn.itcast.day1.ReflectDemo.getDimensionsOfArray(ReflectDemo.java:98)
at cn.itcast.day1.ReflectDemo.getDimensionsOfArray(ReflectDemo.java:98)
at cn.itcast.day1.ReflectDemo.main(ReflectDemo.java:79)
可以帮我分析一下, java.lang.NullPointerException
这个错误是在哪里产生的,怎么会产生么? |