При компиляции вы указываете имя одного или нескольких исходных файлов, таким образом, расширение .java
При запуске вы указываете имя класса основного класса, таким образом, нет расширения.
Разница становится еще более очевидной, когда класс находится в пакете:
javac mypackage/MyClass.java
java mypackage.MyClass