私はガイドラインと呼ばれる独自のクラスを作った。これは、ユーザーが特定のボタンを押すと、新しいウィンドウに表示したいテキストを含む。Java - オブジェクトを自分のクラスからメインクラスの文字列に変換するにはどうすればよいですか?
public class Guidelines {
public Guidelines(String buttonName){
guidelines(buttonName);
}
private String guidelines(String buttonName){
String content = "";
if (buttonName.equals("norman"))
content = "Norman is the man!";
if (buttonName.equals("nielsen"))
content = "Nielsen is the best!";
if (buttonName.equals("fitt"))
content = "Fitt rocks!";
return content;
}
}
しかし、私はこのように私のメインクラスでこのクラスを呼び出すとき:
Guidelines content = new Guidelines("norman");
JTextArea textArea = new JTextArea(String.valueOf(content));
私は"Norman is the man!"
のような文字列を取得しますが、[email protected]
のようなものはありません。オブジェクトを文字列に変換する際に問題があると思います。どのように文字列を取得できますか?
のvalueOfを使用する必要を呼び出すことはできません、プラスコンテンツがすでに文字列です。これはあなたのメソッドをpublicにすることでうまくいくはずです:JTextArea textArea = new JTextArea(Guidelines.guidelines(buttonName)); –
@JeanHenry実際に 'content'には' Guidelines'があります( 'valueOf'が必要で、' Guidelines'オブジェクトの 'toString'が呼び出されます)。これは、文字列である 'guidelines'メソッド内の' content'ローカル変数です。しかし、混乱を避けるために、2つのうちの1つをより良い名前にする必要があります。 – SantiBailors
'toString()'メソッドをオーバーライドするだけで、 'guidelines()'メソッドで生成された文字列が返されます。 –