为什么 javac 在文件名中查找 .java 扩展名。 虽然 java 不在其参数中查找 .class 吗?并自动转到 .class 文件? 这有什么原因吗?
最佳答案
不会自动添加 .class
:您只需运行 java
并指定将哪个类用作 main。 类加载和类路径的详细信息处于不同的抽象级别:可能没有 .class
文件,或者例如它在一个 JAR 中。
顺便说一下,如果你仔细观察,你会发现 java
不会要求你提供路径:参数中没有斜杠(或者更糟的是,有反斜杠),只有分隔包名称的正确点。所以它从来都不是一个"file"。
javac
确实可以处理文件,因此您需要指定这些文件。
关于java - 为什么javac需要.java扩展名而java不需要.class扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8755746/