



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java中的main()方法详解在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等。在看Java中的main()方法之前,先看一个最简单的Java应用程序HelloWorld,我将通过这个例子说明Java类中main()方法的奥秘,程序的代码如下:/* Java中的main()方法详解*/publicclassHelloWorld publicstaticvoidmain(String args) System.out.println(Hello World!);一、先说类:HelloWorld 类中有main()方法,说明这是个java应用程序,通过JVM直接启动运行的程序。既然是类,java允许类不加public关键字约束,当然类的定义只能限制为public或者无限制关键字(默认的)。二、再说main()方法这个main()方法的声明为:public static void main(String args)。必须这么定义,这是Java的规范。为什么要这么定义,和JVM的运行有关系。当一个类中有main()方法,执行命令“java 类名”则会启动虚拟机执行该类中的main方法。由于JVM在运行这个Java应用程序的时候,首先会调用main方法,调用时不实例化这个类的对象,而是通过类名直接调用因此需要是限制为public static。对于java中的main方法,jvm有限制,不能有返回值,因此返回值类型为void。main方法中还有一个输入参数,类型为String,这个也是java的规范,main()方法中必须有一个入参,类细必须String,至于字符串数组的名字,这个是可以自己设定的,根据习惯,这个字符串数组的名字一般和sun java规范范例中mian参数名保持一致,取名为args。因此,main()方法定义必须是:“public static void main(String 字符串数组参数名)”。三、main()方法中可以throw Exception因此main()方法中可以抛出异常,main()方法上也可以声明抛出异常。比如,下面这个写法是正确的:publicclassTestMain publicstaticvoidmain(String args)throwsException System.out.println(哈哈哈哈哈);thrownewException();运行结果:哈哈哈哈哈Exception in threadmainjava.lang.Exception:at maintest.TestMain.main(TestMain.java:11)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)at java.lang.reflect.Method.invoke(Method.java:585)at ellij.rt.execution.application.AppMain.main(AppMain.java:90)Process finished with exit code 1四、main()方法中字符串参数数组作用main()方法中字符串参数数组作用是接收命令行输入参数的,命令行的参数之间用空格隔开。下面给出一个例子,看看如何初始化和使用这个数组的。/* 打印main方法中的输入参数*/publicclassTestMain publicstaticvoidmain(String args)System.out.println(打印main方法中的输入参数!);for(inti=0;ijavac TestMain.javaD:Studybasetestsrcjava TestMain 1 2 3打印main方法中的输入参数!123五、给出HelloWorld的另外一个版本/* 变态版的HelloWorld.呵呵*/publicclassHelloWorld2 staticSystem.out.println(Hello Wordld!);publicstaticvoidmain(String args)System.exit(0);这个main()方法执行的内容就一句System.exit(0); ,目的是让程序正常结束。那“HelloWorld!”是从哪里打印的,秘密就是在static打印的,因为sta
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 云南省西盟佤族自治县2025年上半年事业单位公开遴选试题含答案分析
- 普速铁路营业线施工与维修管理知识试卷
- 毛纱行业的绿色革新
- 山东省武城县第二中学2026届高三化学第一学期期末联考模拟试题含解析
- 河北省卢龙县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省井陉县2025年上半年事业单位公开遴选试题含答案分析
- 2025版建筑工地围挡租赁质量保证合同
- 2025年度智慧社区房地产合伙人合作协议书
- 2025版农村集体土地承包及使用权转让合同范本
- 2025碧桂园物业用房施工与能源管理合同
- 口腔工艺管理课件
- 固定矫治器粘接的护理流程
- 2025年《数据采集与处理》课程标准
- 混凝土垫层厚度强度检测要求
- EXCEL实操应用培训
- DB32/T 4322-2022家政职业经理人培训规范
- 零时工合同协议书
- 脊髓电刺激护理
- 人教版七年级上册数学教案(表格版)
- 2025-2030中国水利信息系统行业市场发展现状及发展趋势与投资前景研究报告
- 外包合同补充协议
评论
0/150
提交评论