Java程序入口必须是public static void main(String[] args),一个字母都不能错:public确保JVM可调用,static支持无需实例化运行,void表示无返回值,main为固定大小写名称,String[] args为字符串数组类型。

Java 的 main 方法 是程序的入口,写错就运行不了。核心就一条:必须是 public static void main(String[] args),一个字母都不能错。
方法签名不能改
这是 JVM 识别程序起点的唯一约定,不是命名习惯,是硬性要求:
- public:必须公开,JVM 才能调用
- static:不用创建对象就能运行,因为此时还没实例化任何类
- void:main 方法不返回值,JVM 不接收返回结果
- main:名字固定,大小写敏感,不能写成 Main 或 mian
- String[] args:参数名可以换(比如写成 String[] arguments),但类型和数组形式不能变
常见写法误区
这些看着像,但都会编译通过却无法作为主程序运行:
-
static public void main(String args)—— 缺少 [],不是字符串数组,是单个字符串 -
public void main(String[] args)—— 少了 static,JVM 找不到静态入口 -
public static int main(String[] args)—— 返回类型不是 void -
public static void main(String... args)—— 可变参数语法虽等价,但部分老版本 JDK 或 IDE 可能不识别,新手建议坚持用 String[] args
放在哪?怎么运行?
main 方法必须定义在 public 类中,且类名要和文件名完全一致:
立即学习“Java免费学习笔记(深入)”;
- 文件叫 HelloWorld.java,那里面就得有个 public class HelloWorld
- main 方法可以写在这个类里,也可以写在其他非 public 类中,但 JVM 只认 public 类里的 main
- 编译用
javac HelloWorld.java,运行用java HelloWorld(注意:不要加 .class,也不要写成 java HelloWorld.class)
基本上就这些。记牢签名、注意大小写、类名匹配文件名——写对这三点,main 方法就稳了。










