48

ここで何が問題なのですか?

class UserInput {
  public void name() {
    System.out.println("This is a test.");
  }
}

public class MyClass {
  UserInput input = new UserInput();
  input.name();
}

これは不平を言います:

<identifier> expected
   input.name();
4

5 に答える 5

52

コードをメソッドに入れます。

これを試して:

public class MyClass {
    public static void main(String[] args) {
        UserInput input = new UserInput();
        input.name();
    }
}

次に、IDE からクラスを「実行」します

于 2012-05-11T22:55:39.087 に答える
18

メソッドの外でメソッドを呼び出すことはできません。このようなコードは、クラス内で浮遊することはできません。

次のようなものが必要です:

public class MyClass {

  UserInput input = new UserInput();

  public void foo() {
      input.name();
  }
}

またはコンストラクター内:

public class MyClass {

  UserInput input = new UserInput();

  public MyClass() {
      input.name();
  }
}
于 2012-05-11T22:54:04.637 に答える
9

input.name()関数内にある必要があります。クラスには、ランダム コードではなく宣言が含まれます。

于 2012-05-11T22:54:26.763 に答える
5

代わりに、次のようにして、myclass アイテムをメイン メソッド内に移動します。

    class UserInput {
      public void name() {
        System.out.println("This is a test.");
      }
    }

    public class MyClass {

        public static void main( String args[] )
        {
            UserInput input = new UserInput();
            input.name();
        }

    }
于 2012-05-11T22:56:19.693 に答える