完全に忘れてたので覚え直し。
classの中にmain()がある。
class名とファイル名は一緒にして、拡張子は クラス名.java
コンパイルすると クラス名.class
ができる
実行は java クラス名
で、拡張子をつけない!!!
$ cat HelloWorld.java
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
# compileする
$ javac HelloWorld.java
# ファイルができる
$ ll HelloWorld.class
-rw-r--r-- 1 root staff 426B 2 1 15:18 HelloWorld.class
# 実行時、拡張子はつけない!!!
$ java HelloWorld
Hello World!
# 拡張子をつけると、こんなエラーが出る
$ java HelloWorld.class
エラー: メイン・クラスHelloWorld.classを検出およびロードできませんでした
原因: java.lang.ClassNotFoundException: HelloWorld.class