Javaで日本語

昔、Javaで日本語クラスを作った(嘘、気がついたら日本語が混入していた)時、クラスファイルならそのまま動くのにjarにするととたんに動かなくなる問題なんてのがあって、日本語を使うのをさけていました。
そういや、あれ、どうなったんだろうなぁ、と試しに作ってみました。

public class 猫
{
   public void 鳴く()
   {
      System.out.println("にゃーお");
   }

   static void main(String args)
   {
     猫 三毛=new 猫();
     三毛.鳴く();
   }
}

JDK6とNetBeans6.5でjarを作ると、何とこれが動くんですよ! やー、びっくり。
ただし、jarのファイル名は化けてた(というか、プロジェクト名に日本語を使うと「_」になるらしい)のが残念。
コードコンプリートに「猫」だの「三毛」だのが出ると何か和みますね。


昔は「ファイル名のエンコーディングの問題があるので、直接ファイル名になるクラスに日本語を使うのはダメ。ただし、クラスファイル内のIdentifierは日本語もOK」と言われてたんですよね。これって、ただのバグだったのかなぁ(^^;)。

(追記)
同じこと考えている人がいました

そうか、全角でも「魁!男塾」や「モーニング娘。」はダメなのか。参考になるなぁ。