更多精彩内容,欢迎关注:

视频号
视频号

抖音
抖音

快手
快手

微博
微博

java main

文档

java main

java main是java虚拟机通过main方法找到需要启动的运行程序,并且检查main函数所在类是否被java虚拟机装载。如果没有装载,那么就装载该类,并且装载所有相关的其他类,因此程序在运行时,第一个执行的方法就是main()方法。
推荐度:
导读java main是java虚拟机通过main方法找到需要启动的运行程序,并且检查main函数所在类是否被java虚拟机装载。如果没有装载,那么就装载该类,并且装载所有相关的其他类,因此程序在运行时,第一个执行的方法就是main()方法。

java main是什么,让我们一起了解一下?

java main是java虚拟机通过main方法找到需要启动的运行程序,并且检查main函数所在类是否被java虚拟机装载。如果没有装载,那么就装载该类,并且装载所有相关的其他类,因此程序在运行时,第一个执行的方法就是main()方法。

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 字符串数组参数名[]) ”。

实战操作:具体代码示例如下:

package javase2;
/*
 * public static void main(String [] args){....}
 * pblic:公共的,访问权限最大,由于main要被jvm调用,所以要权限够大
 * static:静态不需要创建对象,方便jvm调用
 * void:方法的返回值给调用者,返回给jvm没有意义
 * main:方法的入口
 * String[]args:字符串数组,那么值呢?
 * 早期为了键盘录入
 * 格式是:java mainDemo helloworld java
 */
public class mainDemo {
public static void main(String [] args) {
System.out.println(args);//[Ljava.lang.String;@15db9742
System.out.println(args.length);//0
System.out.println(args[0]);//java.lang.ArrayIndexOutOfBoundsException数组索引越界
}
}

以上就是小编今天的分享了,希望可以帮助到大家。

文档

java main

java main是java虚拟机通过main方法找到需要启动的运行程序,并且检查main函数所在类是否被java虚拟机装载。如果没有装载,那么就装载该类,并且装载所有相关的其他类,因此程序在运行时,第一个执行的方法就是main()方法。
推荐度:
为你推荐
资讯专栏
热门视频
相关推荐
java malloc java mapping java math.ceil java matlab java matrix java memcpy java merge java method java mian java mina java mkdir java mmap java mockito java modelandview java module java monad java mono java mqtt java multiset java mvvm java logstash java logging java localtime java locale java list.contains java list.add java linq java linklist java leveldb java lamada java kudu java kmeans java keystore java kafka java jxl java jvm java jtextfield java jtable java jta java jstat
Top