1

toString() メソッドで構築された文字列を出力するために、アクター クラスの print メソッドを取得しようとしています。ただし、エラーが発生し続けます。(メソッド宣言が無効です。戻り値の型が必要です)

public class actor {

    private String name;
    private String address;
    private int age;


public actor(String name, String address, int age) {

    this.name = name;
    this.address = address;
    this.age = age;


}


public void setName (String name) {

    this.name = name;

}


public void setAddress (String address) {

    this.address = address;
}


public void setAge (int age) {

    this.age = age;

}

public void setFilm () {


}

public String getName () {
    return name;

}

public String getAddress () {
    return address;

}

public String toString (String name, int age, String address){

        return name+" who's "+age+" and lives in "+address;


}


public void print (){
    String a = toString();
    System.out.println(a);

}


print();
}

私はこれをかなり長い間機能させようとしてきましたが、役に立ちませんでした。

4

11 に答える 11

1

なぜprint()メソッドが必要なのですか? あなたはただ使うことができます-

Actor a = new Actor(...);
System.out.println(a);

これは暗黙的にtoString()メソッドを実行します

于 2013-11-14T15:15:45.873 に答える
1

プログラムを実行するには、次のようなメイン関数が必要です。

最後の行 print() を削除してから、Main.java という新しいファイルを作成し、書き込みます。

package yourPackage // put them into the same package, 
                    main class can call actor class

public class Main{
   public static void main(String[] args) {
      actor a = new actor();
      a.print();
   }
}
于 2013-11-14T15:04:08.623 に答える
0

Calling print(); on class body is invalid. Remove following method call.

 print();
于 2013-11-14T15:00:24.390 に答える
0

クラスに main メソッドを追加し、そのメソッドで Actor のコンストラクターを使用して、Author オブジェクトを作成します。この Author オブジェクトで print() を呼び出します。

TJamesBoone は、実際に何が起こっているのかを理解できるように、非常に優れた回答を提供しています。彼の答えに従ってください。

https://stackoverflow.com/a/19981973/1785341

于 2014-11-24T15:26:03.803 に答える
0

これがあなたのコードです..コンパイルして実行してください..パブリッククラスアクター{

   private String name;
   private String address;
   private int age;


 public actor(String name, String address, int age) {

   this.name = name;
  this.address = address;
  this.age = age;


  }


 public void setName (String name) {

  this.name = name;

 }


public void setAddress (String address) {

  this.address = address;
 } 


 public void setAge (int age) {

  this.age = age;

}

 public void setFilm () {


 }

 public String getName () {
   return name;

}

  public String getAddress () {
    return address;

 }
 @Override

  public String toString (){

       return name+" who's "+age+" and lives in "+address;


   }


   public void print (){
     //String a = toString();
     System.out.println(this);

   }

    public static void main( String[] args )
  {
       actor a = new actor( "xyz","abc",20 );
      a.print();
   }
  }  
于 2015-07-30T08:15:00.483 に答える
0

それは簡単です....クラスにtoString()メソッドを記述したら、print()と呼ばれる別のメソッドを実行し、print()メソッド内でtoString()メソッドを呼び出します。

public void print()
{
  System.out.println(toString());
}
于 2017-10-04T23:17:45.987 に答える