[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 02/26 14:22 / Filesize : 92 KB / Number-of Response : 331
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★Java質問・相談スレッド138★★



162 名前:デフォルトの名無しさん [2010/05/07(金) 09:04:58 ]
初心者です。試験勉強用の事で、言葉の定義とかなんですが、質問させて下さい。
1)メソッドに渡した基本型のフィールド変数は、メソッド内側の操作は、
 外側の変数には反映されないでしょうか。(合っていますよね。)
2)このメソッド内の変数をローカル変数と呼ぶ、合っていますか。
3)通常、引数で渡した変数の反映を読んだ側でも反映して返すには、
 戻り値で返すのが普通でしょうか。(static変数との使い分けがよく分からない;)
4)メソッドに参照型の参照で渡した場合、
 メソッド内部のインスタンスに対する操作は反映される、っていうのが、
 当たり前だと個人的には感じるんだけども、
 わざわざ参考書とかで説明してあるのが謎です。
 例えば、
  method1(Vector v)の中で
   Vector v = new Vector();
   v.add(new String("abc");
 とやった場合には外側のvにはabcはくっつかない、
  method2(Vector v)の中で
   v.add(new String("abc");
 とかやると、くっつく、と。
 当たり前の様な気もしますし、どうなんでしょう。
5)この4)の場合と、1)の場合を比較した時の理論がよくわかりません。
 1)だと、メソッド側に引数で渡された基本型の値はコピーされて
 (多分JVMのメモリにはその値用の領域が確保されますよね)
 メソッド内の操作はそのコピーされた領域に保存された値を操作しているんだと
 思いますが、4)で参照を渡した時も、参照は別の領域にコピーされるんですよね。
 すると、4−method2の場合には、v.add〜のvで指せる参照はコピーされた
 値な様な気がして・・どうなんでしょうか。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<92KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef