Machen Sie Hashtable in Java unveränderlich und schreibgeschützt
Aus Sicherheitsgründen ist es manchmal notwendig, die Zugriffsrechte zu ändern, um eine fehlerhafte Änderung zu vermeiden. Aus diesem Grund hat Java eine Methode eingefügt, die unsere Hashtabelle für das Schreiben unzugänglich macht, oder mit anderen Worten, eine Hashtabelle, die nicht schreibgeschützt geändert werden kann.Um die Zugriffsrechte zu ändern, müssen Sie nur die Methode der Collections-Klasse java.util.Collections.unmodifiableMap(Map map).
öffentliche statische < K,V> Karte< K,V> unmodifiableMap(Map extends K,? extends V> m): Diese Methode gibt eine unveränderliche Hashtable-Ansicht zurück, die nicht bearbeitet werden kann.
Das folgende Beispiel zeigt die Verwendung der java.util.Collections.unmodifiableMap().
import java.util.Collections;Nach dem Kompilieren und Ausführen des obigen Codes ergibt sich folgendes Ergebnis:
import java.util.Hashtabelle;
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");
Karte m = Collections.unmodifiableMap(hashtable);
m.put("4", "val4");
System.out.println(m);
}
}
Ausnahme im Thread "main" java.lang.UnsupportedOperationExceptionReferences:
at java.util.Collections$UnmodifiableMap.put(Unknown Source)
at HashTable.Unmodifiable_Hashtable.main(Unmodifiable_Hashtable.java:16)
java.util.Collections.unmodifiableMap() Methode