0

私は次のコードを持っています:

enum CarEnum {
   BMW("BMW"), TOYOTA("Toyota"), FORD("Ford");
   String name;
   CarEnum(String s) {
      name = s;
   }
}
class Cars {
   static CarEnum a;
   public static void main(String[] args) {
      System.out.println(a.BMW.name + " " + a.FORD.name);
   }
}

Cars.javaという名前のファイルにあります

これを実行しようとすると、次のエラーが発生します。

java.lang.NoClassDefFoundError: Car
Caused by: java.lang.ClassNotFoundException: Car
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
Exception in thread "main" 

クラスカーが見つからないと言っているのはなぜですか?

4

4 に答える 4

2

1/あなたのコードは機能しています私はすぐにそれをコピー/貼り付けます

2 /例外でクラスについて言及してCarいるが、コードにクラスが存在しない

3 /良いクラスのmainメソッドを起動してもよろしいですか?

于 2012-06-13T08:00:08.347 に答える
1

このようにしてみてください:

public class Cars {
   enum CarEnum {
       BMW("BMW"), TOYOTA("Toyota"), FORD("Ford");
       String name;
       CarEnum(String s) {
          name = s;
       }
   }
   static CarEnum a = CarEnum.BMW;
   public static void main(String[] args) {
      //you never initialized your a so you can print
      System.out.println(a.name);
      //or to check all your Enums Names
      System.out.println(CarEnum.BMW.name + " " + CarEnum.Ford.name);
   }
}
于 2012-06-13T07:59:16.257 に答える
1

ファイル名を再確認してください。Carコードで利用できないエラー参照のため。ファイルの名前を。に変更してみてくださいCars.java

于 2012-06-13T08:16:05.967 に答える
1

唯一の問題は、コードを実行したときに、のjava Car代わりにコマンドを指定したことですjava Cars

于 2012-06-13T08:12:33.450 に答える