- ベストアンサー
引数としてnew Objectを渡したとき、後でObjectをどうやって参照する?
はじめまして。 以下のようなコードを書いているのですが: class sample extends JScrollPane(){ //コンストラクタ public sample(){ super(new JTextArea); } ここでsuper(new JTextArea);としたこのJTextAreaにアクセス したいと考えています。 友達はgetComponentメソッドを使う方法と、「他でnewする」方法が あると言うのですが、この「他でnewする」というのがどういうこと なのかよく分かりません。 そもそも、JTextAreaはsuper(new JTextArea);したとき、どこへ行って しまうのでしょうか?誰にも参照されていないのでしょうか?? 初心者でしてわかりにくい質問ですみません。 何卒よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> ここで どこで? 通常なら、 JTextArea jta = new JTextArea(); someMethod(jta); としておき、「ここで」jtaにふつうにアクセスできます。 あなたの例では参照がまったくないので、アクセスのしようがありません。 なお、ついでですが、ふつうは、JScrollPaneのサブクラスを作る必要はありません。
その他の回答 (1)
- koko_u_
- ベストアンサー率18% (459/2509)
>ここでsuper(new JTextArea);としたこのJTextAreaにアクセス >したいと考えています。 どこでアクセスしたいのでしょうか? >そもそも、JTextAreaはsuper(new JTextArea);したとき、どこへ行って >しまうのでしょうか?誰にも参照されていないのでしょうか?? 基底クラス JScrollPane のコンストラクタが受け取って、その中で参照しているはずです。
お礼
ご回答ありがとうございます。 sampleクラス内で使いたかったのですが、とりあえず#2のお答えどおりにしたらできました。 >基底クラス JScrollPane のコンストラクタが受け取って、その中で参照しているはずです。 なんだか難しいですね。。。
お礼
ありがとうございます! とりあえず教えていただいた方法で解決いたしました。 >なお、ついでですが、ふつうは、JScrollPaneのサブクラスを作る必要はありません。 そうなんですか。。う~ん、もっと勉強します(^^;)