Java main 方法的多种定义方式

正确的方式

常规定义


public static void main(String[] args) {

}

static 和 public 调换顺序

static public void main(String[] args) {

}

String[] 改成 String...

public static void main(String... args) {

}

通过查看字节码文件,发现使用 String[]String... 得到的字节码文件相同
使用 String[] 字节码文件

// class version 61.0 (61)
// access flags 0x21
public class com/example/demo/Main {

  //...
  // access flags 0x9
  public static main([Ljava/lang/String;)V
  //...  
}

使用 String... 字节码文件

// class version 61.0 (61)
// access flags 0x21
public class com/example/demo/Main {

  //...
  // access flags 0x89
  public static varargs main([Ljava/lang/String;)V
  //...
}

String[] 的参数名修改成其他

public static void main(String[] stuff) {

}

错误的方式

使用非 public 关键字

static void main(String[] args)
  • main 函数一定要 public 修饰

没有 static 关键字

public void main(String[] args)
  • 没有 static 修饰,就不是启动方法,普通方法

不使用 void 关键字

public static String main(String[] args)
  • main 方法必须是 void 方法。
posted @ 2024-10-30 16:22  Jacob-Chen  阅读(20)  评论(0)    收藏  举报