java javac 的小小发现

来源:百度知道 编辑:UC知道 时间:2024/06/21 23:56:40
本人初学java

文件名是OddSum.java
我在目录下执行javac oddsum.java (这时候是小写的,编译也可以通过)
然后 java oddsum 就不行了,一定要写成java OddSum
也就是编译的时候貌似不区分大小写,运行的时候貌似区分大小写,

我这个问题貌似吹毛求疵,甚至有些无聊,但我认为可以以小见大,就像牛顿看见苹果掉在地上,呵呵,那位高手知道啊,谢谢了

javac.exe 是用来编译java文件的,后面连的是java源码文件名称,而windows一般对文件名大小写不敏感,所以当你文件名是 OddSum.java 时,用 javac oddsum.java 也能通过。
java.exe命令是用来执行java类的,在你OddSum.java文件中,肯定有一个类OddSum啦,当然O和S是大写。编译后的class文件名是根据源码文件中类名来的,所以你的编译后的结果class文件名应该是OddSum.class。java语言中大小写敏感,所以java.exe命令加载类名也就是OddSum也是对大小写敏感的啦,所以要用OddSum而oddsum则不行。

你在用javac oddsum.java 之前编译过么?
是不是之前编译成功之后没删除.class?

不可能吧 哪里搞错了

cjw0511 正解。