0

以下に示す簡単なJavaプログラムを作成しました。残念ながらコンパイルエラーが発生します。

class String {
    public static void main(String[] args) {
         System.out.println("stre");
    }
}

コマンドプロンプトでのコンパイル中に次のようになります。

c:\Java>java String エラー: Main メソッドがクラス String に見つかりません。main メソッドを次のように定義してください: public static void main(String[] args)

この単純なプログラムでさえ、私のプログラムでは機能しませんでした! どうしてこれなの?

編集:

今私が持っています:

import java.lang.*;
import java.lang.String.*;

class incogn {
    public static void main(String[] args) {
        System.out.println("stre");
    }
}

そして、それは機能していません。なぜそれが機能しないのですか?

それは以前とまったく同じことを言っています。

Java.lang.String[] であなたが言ったことは機能しますが、なぜこれが機能しないのですか? そして、なぜこれまでこれを着る必要がなかったのですか?

4

5 に答える 5

3

おそらく、クラスの名前を使用していて、 ;Stringと衝突しているためです。java.lang.Stringつまり、メイン メソッドが取る必要のあるインスタンス、つまりjava.lang.String. どちらかを試してください

  1. クラスの名前を変更する
  2. 署名の変更public static void main(java.lang.String[] args) {
于 2012-10-29T00:26:05.763 に答える
0
  1. 「String」という名前のJavaファイルはjava.lang.StringのJavaライブラリクラスであるため、作成しないでください。
  2. クラスを公開する

したがって、ソースコードを次のように記述します。

public class StringDemo {
    public static void main(String[] args) {
         System.out.println("stre");
    }
}

今すぐコンパイルします。私はそれがうまくいくと信じています。

于 2013-03-01T09:50:42.473 に答える
0

1) クラスはpublic

String2)と名前が重複しているため、class と呼ばないようにしてくださいjava.lang.String(まだできますが、良くありません)。それ以外の場合、メイン メソッドの引数の型が間違っています。

java.lang3)パッケージから明示的にインポートする必要はありません。


public class String {
    public static void main(java.lang.String[] args) {
         System.out.println("stre");
    }
}

また

public class YourClass {
    public static void main(String[] args) {
         System.out.println("stre");
    }
}

2 番目の形式を使用してみてください。

于 2013-03-01T11:29:22.900 に答える
0

クラス名Stringを指定してから呼び出すのは、新しく定義されたクラスmain(String[] args)を意味する場合はあいまいですjava.lang.Stringが、Java スコープ ルールでは、特に宣言されていない限り、your を使用します。


編集後に更新

java.lang.String パッケージはありませんが、クラスです。したがって、あなたは言うことはできません

import java.lang.String.*;

"" を追加することにより.*、コンパイラはこれが何らかのパッケージを参照していることを理解しますString

1 つの例外は静的インポートですが、これはここで必要なものではありません。

于 2012-10-29T00:27:16.993 に答える
0

クラス String を呼び出さないでください。Java クラス String と競合します。

または、コードを次のように変更できます。

class String {
    public static void main(java.lang.String[] args) {
         System.out.println("stre");
    }
}
于 2012-10-29T00:27:30.417 に答える