void otherfunc() {
Map<Key, Value> map = new MyMap<>();
myfunc(map);
}
void myfunc(Map<Key, Value> map) {
Key k = someKey;
Value v = someValue;
map.put(k, v);
}
MyMapはこれらの参照をkおよびvに保つ必要がありますか?マップ実装の契約(またはそれに関係なく)は、キーまたは値の参照を格納する必要があります
いいえ、map.get()関数を使用していつでも取得できます。 – clinomaniac
したがって、呼び出し側は、putとマップがまだ参照されているために、GCがkとvを収集しないという前提はできません。 –
* Java *が必要です。おそらくそれが動作する可能性のある他の方法はありません。 – EJP