Nanashi-soft○ソフトメニュー○Javaアプリケーション○
Javaはクラス名=ファイル名で保存しなければならないと言うルールがあります
ですから、一番初めにクラス名を決めなければ始まりません
何でも良いのですが、ここでは fstとします
単にファウラ/タクティを作りながらコレを書いているからです(^^;
◎プログラミングする
public class fst{ public static final void main(final String[] args){ System.out.println("Hellow World"); } }
これをメモ帳などで記述して、fst.javaで保存します
先にも書きましたが『クラス名.java』で保存しなければならないルールです
◎コンパイルする
前の説明で記述したバッチを実行するか, DOSプロンプトから、
javac fst.java
を実行するだけです
うまくコンパイルできない場合は,とにかくパス設定を疑うのが一番でしょう
この辺りは Javaの改善しなければならない点の1つですね
◎実行する
DOSプロンプトから、
java fst
を実行すると
Hello Worldと表示されるはずです
Exception in thread "main" java.lang.NoClassDefFoundError: fst
のようなエラーが出た場合,自身をクラスパスに指定して下さい
set classpath=「コンパイルした結果できたクラスパス」
javac fst.java
System.out.println("日本語を表示");
としてコンパイルしてみると、正しく表示されました
内部的にどうなっているのか探る為に、
System.out.println("a日本語を表示a");
としてコンパイルし、fst.classをダンプ表示してみると、該当箇所は
61 E6 97 A5 E6 9C AC E8 AA 9E E3 82 92 E8 A1 A8 E7 A4 BA 61
となっていました
0x61はアスキーコードの「a」
0xE697A5は UTF-8の「日」
ですので、自動的に元ソースのSJISから UTF-8に変換された事になります