【初心者】Java質問・相談スレッド109【大歓迎】
■ このスレッドは過去ログ倉庫に格納されています
0078デフォルトの名無しさん
2007/11/26(月) 09:49:30vectorがnullでないことが自然なのなら、
Aのコンストラクタでvectorをnull以外に初期化しておけばいい。
vectorがnullであっても構わないのなら、
nullチェックの煩わしさを避けるのにnullオブジェクトパターンを使う手もある。
でも、そもそもvectorフィールドがpublicになって外部に見えているのが問題な気がする。
vectorに何かの処理を行うのはAにやらせるべきだと思う。
その何かをやらせるメソッドでnullチェックをやればnullチェックが分散することもないし、
nullの時にvectorlazy initializeするとかの処理もひとつにまとめられる。
読み取り専用でvectorを外部で使いたいのならvectorのコピーを外部に出せばいい。
■ このスレッドは過去ログ倉庫に格納されています