1

特定の GUI に基づいてクラスを実装していて、GUI に情報を表示するために tostring() をオーバーライドしようとしていますが、正しく動作させることができません。

GUI コード

private void updateDisplay() {
    try {
        if (game.isAccepted()) {
            String str = "Selected Applicant:\n\n"
                    + currentApplicant.toString() + "\n\nwas ";
            if (game.isBestApplicant()) {
                str += "the BEST.  You Win!";
            } else {
                str += "not the best available.  You Lose.\n\nBest applicant was: \n\n"
                        + game.getBestApplicant();
            }
            display.setText(str);
            showNewGameControls();
        } else {
            display.setText("Current applicant is:\n\n"
                    + currentApplicant.toString()
                    + "\n\nDo you wish to accept or reject?");
            showCurrentGameControls();
        }
    } catch (HiringException e) {
        display.setText(e.getMessage());
    } catch (Exception e) {
        display.setText("Unandled Exception: " + e.toString());
        throw new RuntimeException(e);
    }
}

私が実装しているクラスについて、次のメソッドを書きました

public String tostring(){
  return currentApplicant;
}
4

1 に答える 1

3

Java では大文字と小文字が区別されるためtoString、 ではなくを使用する必要があります。tostringしたがって:

public String toString()

技術的には、tostring は Java の toString と同じではありません。スペルに注意してください。エディターがサポートしている場合は、@Override注釈を使用してください。@Override注釈は、適切なメソッドのオーバーライドに失敗するのを防ぎます。

于 2013-04-15T06:43:13.587 に答える