java中是否有任何特定原因,主要方法应为小写字母
是“主要”和“主要”
此编译
public class ManiMethod {
public static void main(String[] args) {
}
}
为什么它不能编译
public class ManiMethod {
public static void Main(String[] args) {
}
}
答案 0 :(得分:2)
第二个代码段绝对可以编译-它没有运行,因为它没有main
方法。
为什么用main
而不是Main
?因为那是语言的设计师决定的。 Section 12.1.4 of the JLS指定应如何精确定义main
方法的签名。
答案 1 :(得分:1)
您不正确。这段代码:
recv()
将编译正常。但是它不会作为Java程序运行。
通常,大写和小写命名约定就是这样。没有什么能阻止您提供以大写字母开头的方法名称的。您的第二个代码块将正常编译。
然后是Java是否可以运行此类的问题。不能这样,因为Java可以运行的类的定义是具有名为“ main”的静态方法的,该方法不同于名为“ Main”的方法。
如果您将两个类定义结合在一起,则有两个方法,一个名为“ Main”,一个名为“ main”,它将同时编译并运行。名为“ main”的方法将被执行。
答案 2 :(得分:1)
CREATE INDEX ON company_geo_table (cik, date);
是Java应用程序启动时调用的方法。 请记住,Java区分大小写。因此,main
与Main
不同。
您可以找到更详细的说明here
答案 3 :(得分:0)
所有Java中的第1位区分大小写,Java的“ Main”和“ main”不同。 其次,Java受到C / C ++的启发,C / C ++也使用main()函数作为程序的起点。
Java甚至可以接受Main()的任何函数名称,但是会专门寻找静态main()方法作为程序的起点。
答案 4 :(得分:0)
因为这些是规则。
规则还包括它必须是静态的,公共的并且接受String []类型的单个参数(即String的数组)。
由于Java区分大小写,所以Main与main完全不同。
还有一个约定(有些人会说是标准),即类以大写字母开头,方法以小写方法开头。因此,要将您的问题扩展到一个极端,您不妨问一问,为什么它不叫“ abcde”而不是main?
由于上述所有(无疑还有更多)的结果,java运行时环境的开发人员选择调用作为Java程序main
入口点的方法。
答案 5 :(得分:0)
Java区分大小写。 “主要”不是主要方法。如果使用Main进行编译和运行,它将无法正常工作。
Error: Main method not found in class q1, please define the main method as:
public static void main(String[] args)
or a JavaFX application class must extend javafx.application.Application
答案 6 :(得分:0)
Main
和main
都存在于任何类中,则它们将是两种不同的方法。每当您尝试使用TestClass
运行任何类,例如java TestClass
时,JRE都会搜索名称为main(String[] arg)
的方法。否则它将引发异常。