我的一个孩子在高中学习Java,他的一次考试是这样的:
下列哪个在Java中是有效的标识符?
123 java。
b主要
c . java1234
d。{abce
whoot e。)
他答了b,答错了。
我看了看这个问题,认为main是一个有效的标识符,它应该是正确的。
我们查看了标识符的Java规范,它加强了这一点。我们还编写了一个示例程序,其中包含一个名为main的变量和一个方法。他写了一份书面反驳,包括Java文档参考,测试程序和老师忽略了它,说答案仍然是错误的。
main是有效的标识符吗?
正如其他答案所说
main是一个有效的Java标识符,java1234也是。
我想,这种混淆是由于main(String[])方法经常被JVM1用作入口点。但是,这并不意味着令牌main本身不能用作identifier2。
规范是这么说的,下面的声明也是有效的:
一个字段:
私人int主;
一个局部变量:
字符串main = "";
一个方法:
无效主(){…}
类或接口(尽管不鼓励类或接口名称以小写开头):
类main{…}
一个包:
包主要;
1:正如评论中提到的,JVM规范本身并没有强制要求任何特定的方法作为入口点,但是广泛使用的java工具经常使用这样的方法作为入口点。
2:我通常会避免创建main方法而不是main(String[])。
附录:我不觉得这是咆哮的地方,但这里是我正确的拙见:标识符main和java1234一样有效,所以两者必须同等对待有效或错误。否则是不能容忍的。
正如其他答案所说
main是一个有效的Java标识符,java1234也是。
我想,这种混淆是由于main(String[])方法经常被JVM1用作入口点。但是,这并不意味着令牌main本身不能用作identifier2。
规范是这么说的,下面的声明也是有效的:
一个字段:
私人int主;
一个局部变量:
字符串main = "";
一个方法:
无效主(){…}
类或接口(尽管不鼓励类或接口名称以小写开头):
类main{…}
一个包:
包主要;
1:正如评论中提到的,JVM规范本身并没有强制要求任何特定的方法作为入口点,但是广泛使用的java工具经常使用这样的方法作为入口点。
2:我通常会避免创建main方法而不是main(String[])。
附录:我不觉得这是咆哮的地方,但这里是我正确的拙见:标识符main和java1234一样有效,所以两者必须同等对待有效或错误。否则是不能容忍的。