课程
/后端开发
/Java
/反射——Java高级开发必须懂的
按照老师的在eclipse上打的一样的代码,抛出了数组下标越界的异常,应该是args[0]的问题,但是不知道为什么
2016-08-05
源自:反射——Java高级开发必须懂的 2-1
正在回答
编译完后 执行class文件时 在类文件名后面加一个空格 后面就是传参数 多个参数用逗号隔开 都将会传入args数组里面 你没有传参 所以数组是null 所有角标越界了 压根没有哈哈 再执行class文件时试试
用命令行怎么解决啊?
用eclipse直接运行程序时,main函数默认不带参数,所以String[] args是个空数组,此时想将args[0]赋值给test,自然显示数组越界,因为根本不存在args[0]。
解决方法:
点击运行右侧下拉箭头→点击Run Configurations→点击Arguments→在Program arguments的文本框内输入参数(本题需要输入yes或no)→点击右下方Run→在Console中可以看到运行结果。
qq_扬帆启航_3
我也遇到了这个问题,请问下你现在解决了?怎么解决的?可否说下?
public static void main(String[] args){}
这个主方法的参数是个 String 数组,如果你不传参数!
那么
args[0])
肯定越界啊!
应该是args[]中没有传参数,
举报
反射,Java高级开发必须要懂的知识点,学好Java高级课程的基础
4 回答Class c = Class.forName(args[0]);
1 回答Class c=Class.forName(args[0]);编译异常
2 回答在eclipse中写Class c = Class.forName(args[0]);会提示Class 是原始类型。应该将对通用类型 Class<T> 的引用参数化
4 回答动态类加载时出现数组下标越界异常
2 回答args[0]是干什么的?