问答详情
源自:2-1 Java 动态加载类

Class c=Class.forName(args[0]);为什么会提示数组下标越界

按照老师的在eclipse上打的一样的代码,抛出了数组下标越界的异常,应该是args[0]的问题,但是不知道为什么

提问者:qq_versatilewin_03747674 2016-08-05 23:05

个回答

  • NullMoneyException
    2016-08-13 14:22:52
    已采纳

    编译完后  执行class文件时 在类文件名后面加一个空格 后面就是传参数 多个参数用逗号隔开 都将会传入args数组里面 你没有传参 所以数组是null 所有角标越界了 压根没有哈哈 再执行class文件时试试

  • 时光里的赶路人
    2018-06-01 22:46:10

    用命令行怎么解决啊?

  • qq_itsmylife_12
    2017-04-04 23:08:26

    用eclipse直接运行程序时,main函数默认不带参数,所以String[] args是个空数组,此时想将args[0]赋值给test,自然显示数组越界,因为根本不存在args[0]。

    解决方法:

    点击运行右侧下拉箭头→点击Run Configurations→点击Arguments→在Program arguments的文本框内输入参数(本题需要输入yes或no)→点击右下方Run→在Console中可以看到运行结果。


  • agan4215789
    2016-11-29 22:02:11

    我也遇到了这个问题,请问下你现在解决了?怎么解决的?可否说下?

  • leowei
    2016-11-05 15:40:19

    public static void main(String[] args){}

    这个主方法的参数是个 String 数组,如果你不传参数!

    那么

    args[0])

    肯定越界啊!

  • 王明晓
    2016-08-06 10:21:37

    应该是args[]中没有传参数,