为什么通过cmd编译java代码时写成filename.java和运行同一个文件我们省略了filetype?

Why while compiling java code through cmd it's written as filename.java and running the same file we omit filetype?

虽然通过 cmd(即通过 javac 命令)编译 java 文件,它被写为 filename.java 但是对于 运行 我们写文件名和不' 添加扩展名。为什么在 java 命令中删除扩展名或在 javac 命令中添加扩展名?任何具体原因。

编译时,指定一个或多个源文件的名称,即.java 扩展名

当运行您指定主要class的class名称时,因此没有扩展名。

当 class 在一个包中时,差异变得更加明显:

javac mypackage/MyClass.java
java mypackage.MyClass