詰め将棋のように解決して下さい。
次のプログラムをコンパイルしたら,コンパイルエラーとなった,正しくするにはどこを直すべきか。
(『Java使いの友』List1-1から)
public class hello{
public static void main(String[] arg){
system.out.println("Hello
World!");
}
}
hello.java:3: Undefined variable: system
system.out.println("Hello
World!");
^
1 error
正しくは,3行目のsystemは,Systemで,入力ミス。
エラーリストの
hello.java:3: Undefined variable: system
system.out.println("Hello
World!");
^
1 error
を見ると,3行目に「定義されていない変数:system」のエラーがあり,
system.out.println("Hello World!");
^
1 error
でその場所は,^で示されている。
ファイル名とクラス名を一致させる必要があります。
h2.java:1: Warning: Public class hello must be defined in a file called
"hello.java".
public class hello{
^
1 error
とエラーメッセージがでます。「パブリッククラスhelloは,hello.javaという名前のファイルの中で定義する必要がある」です。ファイル名をh2.javaにしたのが原因です。クラス名も変更する必要がありました。
In class h2: void main(String argv[]) is undefined
というエラーがでます。
プログラムのmainの()の中に,String argv[] がなかったのが原因です。日本語に直すと「void main(String argv[])が定義されていない。」です。実行中にこれを探しているのでしょう。void main(String argv[])は,ほとんど予約語のように扱われていますね。