Hashtable を Java で不変かつ読み取り専用にする
セキュリティ上の理由から、誤った変更を回避するためにアクセス権を変更する必要がある場合があります。そのため、Javaは、Hashtableに書き込みアクセスできないようにするメソッド、つまり、読み取り専用で変更できないHashtableを配置しました.アクセス権を変更するには、Collectionsクラスのメソッドを呼び出すだけですjava.util.Collections.unmodifiableMap(マップマップ).
public static
次の例は、java.util.Collections.unmodifiableMap().
import java.util.Collections;上記のコードをコンパイルして実行すると、次の結果が生成されます:
import java.util.Hashtable;
import java.util.Map;
public class Unmodifiable_Hashtable {
public static void main(String[] s) {
Hashtable hashtable = new Hashtable();
hashtable.put("1", "val1");
hashtable.put("2", "val2");
hashtable.put("3", "val3");
Map m = Collections.unmodifiableMap(hashtable);
m.put("4", "val4");
System.out.println(m);
}
}
スレッド "main" java.lang.UnsupportedOperationException参照:
at java.util.Collections$UnmodifiableMap.put(不明なソース)
at HashTable.Unmodifiable_Hashtable.main(Unmodifiable_Hashtable.java:16)
java.util.Collections.unmodifiableMap() メソッド