0

私はオンライン Java コースに取り組んでいます。現在、次のインスタンス化コードの構築に取り組んでいます。

public class NameDriver
{
   public static void main (String[] args)
   {
      //Instantiation
      Name myName = new Name("Scott", "Robert", "Mitchell");
      Name myName1 = new Name("Scott", "Mitchell");
      Name myName2 = new Name("Mitchell");
      Name noName;
      System.out.println("myName: " + myName.toString());
   }
}

以下については、次のとおりです。

public class Name
{

   private String first;
   private String middle;
   private String last;

   //Constructor Methods
   public Name(String f, String m, String l)
   {
      first = f;
      middle = m;
      last = l;
   }

   public Name(String f, String l)
   {
      first = f;
      middle = "";
      last = l;
   }

   public Name(String l)
   {
      first = "";
      middle = "";
      last = l;
   }

   public Name()
   {
      first = "";
      middle = "";
      last = "";
   }

   public String toString()
   {
      return first + " " + middle + " " + last;
   }
 }

実行すると、「エラー: メイン クラスが見つからないか、読み込めませんでした」というエラー メッセージが表示されます。

Java ファイルの名前はメイン クラスの名前と重複しているため、問題はないようです。

私はかなりの調査を行いましたが、定期的なテーマは、 -cp オプションを使用してクラスパスを指定する必要があるようです。完全なパス名と「。」を使用してこれを試みました。コードが配置されているディレクトリからですが、役に立ちません。コードが正常にコンパイルされているように見え、実行時にエラーが発生することにも言及する価値があります。

私がコードを台無しにした可能性は十分にあります - 私はJavaを使い始めたばかりなので、それを見ることができないので、別の目があれば素晴らしいでしょう.

4

1 に答える 1

1

1) JavascriptではなくJava

2)正しい方法でコンパイルおよび実行していません。

すなわち:

コマンド ウィンドウを開きます。Java ソース ファイルがあるフォルダーに移動します。次に、Javacコマンドを実行してコンパイルします。

例: Javac *.java

3)次に、実行するには、

ルート クラス フォルダー (クラス ファイルが生成される場所) に移動します。コンパイルされたクラスのルート フォルダーとしてソース ディレクトリを使用している場合は、問題ありません。

実行Java NameDriverしてプログラムを実行します。

回答が更新されました:

1) main class のみをコンパイルしていると思いますNameDriver。すべてのクラスをコンパイルする必要があります。

例: javac *.java . これにより、すべてのクラスがコンパイルされます。

2)間違って実行しています。

クラスファイルを実行するときに .java を指定することはできません。これは間違っています >>java -cp . NameDriver.java

これは正しいです>>java NameDriver

于 2013-05-03T03:44:58.600 に答える