java程序的唯一入口是public static void main(string[] args)方法;jvm强制识别该标准签名,要求public确保外部可访问、static支持无需实例调用、void表示无返回值、string[] args为唯一合法参数形式,缺一不可。

Java 程序的入口是 main 方法,它必须满足特定签名,且被声明为 public static void,接收一个 String[] 类型参数。JVM 启动时会查找并调用这个方法,不依赖对象实例,因此类无需先创建对象就能运行。
main 方法的固定写法
标准格式如下(大小写、顺序、修饰符都不能错):
public static void main(String[] args) {
// 程序执行起点
}
- public:确保 JVM 能跨包访问
- static:允许不创建对象直接调用
- void:JVM 不处理返回值,方法不能有返回类型
-
String[] args:参数名可改(如
String[] input),但类型和数组形式不可变;命令行传入的参数按空格分割后存入该数组
类如何被识别为可执行程序
JVM 通过类名(而非文件名)定位入口。运行命令为:
java ClassName
- 类必须已编译成
.class文件 -
ClassName是类的**完整名称**(不含.class后缀),若在包中,需带包路径,例如java com.example.Hello - 当前目录或 classpath 中必须能定位到该类(包括其所在的包目录结构)
常见问题与注意事项
- 一个 Java 文件可以定义多个类,但只有 一个 public 类,且文件名必须与该 public 类名一致;main 方法可放在任意类中,只要它是 public static 的
- main 方法可以重载(如
main(int x)),但只有标准签名的那个会被 JVM 当作入口 - 如果类没有 main 方法,用
java ClassName会报错:Error: Main method not found - args 数组在无命令行参数时长度为 0,不会为 null,可直接遍历或判空
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











