我今天在下面的代码中做了一个有趣的研究,看看有多少种方法可以表达public static void
//public static void main (String args[])correct
//public static void main (String []args)//correct
//public static void main(String...args)//correct
//public static void main(String... args)//correct
public static void main(String[]... args) //correct
static public void main (String args[])
请告知是否还有其他方法。
答案 0 :(得分:2)
必须声明main
方法public
,static
和void
;来自JLS 12.1.4:
方法main必须声明为public,static和void。它必须指定一个形式参数(第8.4.1节),其声明的类型是String数组。因此,可以接受以下任一声明:
public static void main(String[] args) public static void main(String... args)
过去的一些JVM实现不需要可公开访问的main
方法。有时,这已被用于将私有测试方法添加到API中。
虽然方法修饰符public
和static
可以按任何顺序排列(JLS 8.4.3),但它们必须都在返回类型(JLS 8.4)之前,所以任何组合例如void static
是非法的。