クラスAのインスタンスには、プライベートArrayListがあります。インスタンスは、arrayListに格納されているデータを保持する役割を担います。他のモジュールがデータを要求したときに私のコードを安全にする方法は? - 非公開vs.公開
private ArrayList<SomeDataStructure> myPrivateArrayList;
しかし、クラスAのインスタンスがそれを要求誰でもデータを渡す必要がありますので、公共の機能は、クラスAにあります:
public ArrayList<SomeDataStructure> getMyPrivateArrayList();
私の質問は、このpublic関数を介してarrayListを取得した人がそれを変更できないようにするためです(返り値は、読み取り専用)。
ありがとうございます!
コピーを返しますか? 'Collections.unmodifiableList'を使用しますか? –