• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:基本に戻って、型について考えてみる)

参照型の戻り値について

このQ&Aのポイント
  • 基本型やString型の戻り値はイメージしやすいが、参照型の戻り値は具体的な値がわからず困る。
  • enumeration型やPrintWriter型、Object型など、参照型の変数がさしている具体的な値が理解できない。
  • request.getParameterNames()の戻り値であるEnumeration型は、具体的にどのような値を表現しているのかイメージがつかない。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

たぶん、もしこれでEnumerationの型をどうにか具体的にイメージできたと しても、次々とさまざまな型が現れ、そのうち限界がくると思います。 ここは、メソッドとデータが合体した塊、それこそ「オブジェクト」 としかいいようの無いもの、であるとして把握していったほうが (…それができれば苦労は…とおっしゃるかもしれませんね…)。 あ、しかもEnumerationはインタフェースですけど。 まあ例えば自分でJavaモドキを他の言語で実装しようと想像して みれば、変数と関数ポインタの寄せ集めにするのかなあ、とかぼんやり 考えることもできるでしょうが。 とにかく、なんらかのデータを抱えているらしいけどそれは漠然とした 塊としてしかわからず、またそれを外から詳しくわかる必要もない、ただ hasMoreElementsとnextElementという窓口があるだけのモノ、 と把握するしかないんじゃないでしょうか。 中身の構造や原理はよくわからないけど電源コードとスイッチが あって操作方法は一応わかる電化製品のように。とにかく、アンプだ、 とかスピーカーだとか、CDプレイヤーだとか。getParameterNamesと やるとイコライザーが取り出せる、と。 そのへんの、「外から想像つかない/知らなくていい」というのが カプセル化というオブジェクト指向における重要な思想なんで、 そこをなんとか乗りきっていただきたいと思うばかりです。

fumi11
質問者

お礼

僕は結構考えてしまうタイプなので、中身がわからないと先に進めないといった状況に陥ることがしばしばあります。でもどうやら、今までの思考回路ではダメみたいですね。 今度からは、 head_Syndicateさんがおっしゃられたように、「なんらかのデータを抱えているらしいけどそれは漠然とした塊」としてイメージするように努力してみます。 ご丁寧なご説明、本当にありがとうございました。 今後の学習に多いに役立たせていただきます。