【初心者】Java質問・相談スレッド104【大歓迎】at TECH【初心者】Java質問・相談スレッド104【大歓迎】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト150:デフォルトの名無しさん 07/08/03 14:32:02 _found_error の error_frag が指す先を別のオブジェクトに変えても、 readFromData の error_frag が指す先は変わらないから。 151:デフォルトの名無しさん 07/08/03 14:33:43 >>149 Boolean はimmutableなのでインスタンスの状態の変更はできない。 そしてJavaは全て値渡し。 error_frag の参照値がコピーされて _found_error に渡され、 _found_error ではコピーされた参照値をBoolean.valueOf(true) が戻す参照値で上書きする。 その際、readFromData の error_frag は影響を受けない。 解決法としてはインスタンスメソッドなら error_frag をインスタンス変数にする、 それが嫌なら boolean[] やら class MyBoolean{ boolean flag; } を使うなどして インスタンスの状態を変更できるものを使う。 152:デフォルトの名無しさん 07/08/03 14:38:54 考えてみれば error_frag = Boolean.valueOf(true); ではerror_fragの実体の指す先が変わってしまいますよね、失礼しました。 値を変えたいboolean型をこれらのメゾッドの関数が含まれるクラスのメンバー変数にして 解決することにしました。 どうもありがとうございます。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch