欢迎来到天天文库
浏览记录
ID:16379389
大小:22.50 KB
页数:3页
时间:2018-08-09
《java中main()方法以及命令行参数的若干注意》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Java中main()方法以及命令行参数的若干注意2009-12-1422:26main方法的完整定义语法:publicstaticvoidmain(String[]args){}命令行格式:java[命令参数]文件名[args[0](用户参数)args[1]... 比如java-csAClassabc1.关于main()方法中的修饰符public java虚拟机规范并没有要求main一定是public的,所以public可以省略,它只是为了main()方法可以从任意一个java运行环境中调用。不过没有public虽然编译无错误,但是虚拟机无法启动应用程序。2.
2、关于main()方法中的关键字static 静态方法不能访问实例字段。但可访问自身类中的静态字段。 main方法是且必须是一个静态方法,所以static必须写。为了不需要构造类实例。如果没有static,运行时出错。3.main()方法的返回类型和返回值 main(String[]arg)如果不写void会有编译错误 如果不写static和[]会有运行错误 main()方法并不向操作系统返回“退出代码”。java中,如果main方法正常退出,Java程序的退出代码为0,表示成功地实行完毕程序。若要用不同的退出代码终止程序,则使用System.exit方法
3、。 因为main()方法是可以重载的,所以返回类型可以void,int,boolean...但如果从应用程序的入口main()方法的角度看,则只能用void返回。4.main()方法及命令行参数相联系的若干注意 当缺少String[]args时,虽然编译可以通过,但是运行时无法获取有效的main方法,运行时候会报错。其中方法参数名字args可以改变。 要知道知道String数组长度,可以直接用args.length即可。 当没有用户参数的时候,如果进行args[0]等的访问,会抛出一个数组越界异常。 如下操作,由于main()方法的参数类型正确,所以编译可以
4、通过,但运行时会出错。publicclassTest{publicstaticvoidmain(Stringargv){ System.out.println("hellocruelworld");}} 如果超过边界访问args[],编译正常,运行出错。如:publicclassTest{ publicstaticvoidmain(String[]args){ Stringfoo=args[1]; Stringbar=args[2]; Stringbaz=args[3]; } } javaTestRedGreenBluewhatisthevalueofbaz?A
5、.bazhasvalueof""B.bazhasvalueofnullC.bazhasvalueof"Red"D.bazhasvalueof"Blue"E.bazhasvalueof"Green"F.thecodedoesnotcompileG.theprogramthrowanexceptionAnswer:G5.main()方法只作为Java应用程序的入口。Applet程序不需要main()方法,一般由浏览器不同方式启动,其入口程序一般为init()方法。6.main可作为普通方法名。如:publicclassDroitwich{classone{privateclasstwo{
6、 publicvoidmain() //注意这里的main方法 { System.out.println("two"); }}}}显示:编译正常
此文档下载收益归作者所有