创建Array实例报错:'Array()'在java.lang.reflect.Array中为私有访问
问题分析与解决
错误原因
你导入的java.lang.reflect.Array是Java反射API中的工具类,它的构造方法被设为private,不允许通过new关键字直接创建实例,这就是报错'Array()' has private access in 'java.lang.reflect.Array'的根本原因。
老师代码能运行的原因
你老师没有导入任何相关类,说明他代码里的Array是自定义的类——他自己写了一个名为Array的类,并且在这个类中定义了可以接收int参数的公共构造方法,所以能正常执行new Array(5)。
解决方案
- 如果你想使用自定义的Array类:
- 删除代码中的
import java.lang.reflect.Array;语句 - 确保你已经创建了自己的
Array类,示例如下:public class Array { public Array(int size) { // 构造方法逻辑 } }
- 删除代码中的
- 如果你只是想创建普通数组:
直接使用Java原生数组语法即可,不需要借助任何额外类,示例:int[] arr = new int[5];
内容的提问来源于stack exchange,提问作者dd_j
相关产品推荐
相关产品推荐

