اجعل Hashtable غير قابل للتغيير وللقراءة فقط في Java
لأسباب أمنية ، من الضروري في بعض الأحيان تغيير حقوق الوصول لتجنب التعديل الخاطئ. لهذا السبب وضعت Java طريقة تجعل Hashtable الخاص بنا غير قابل للوصول للكتابة أو بعبارة أخرى ، Hashtable لا يمكن تعديله للقراءة فقط.لتغيير حقوق الوصول ، عليك فقط استدعاء طريقة فئة المجموعات java.util.Collections.unmodifiableMap(خريطة الخريطة).
< الثابتة العامة ك ، الخامس > خريطة< ك ، الخامس > خريطة غير قابلة للتعديل (خريطة<؟ يمتد K ،؟ يمتد V> m) < / span>: ترجع هذه الطريقة طريقة عرض Hashtable غير قابلة للتغيير لا يمكن تحريرها.
< / span >< span style = "عائلة الخط: وراثة ؛" >يوضح المثال التالي استخدام < / span >< span style = "عائلة الخط: 'ساعي جديد' ، ساعي ، ميني فان ؛" >java.util.Collections.unmodifiableMap().< / span>
< pre class = "prettyprint lang-java" >import java.util.Collections ؛
import java.util.Hashtable;
import java.util.map;
Unmodifiable_Hashtable الفئة العامة {
الفراغ الثابت العام الرئيسي (سلسلة [] s) {
هاشتابل هاشتابل = هاشتابل جديد ();
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);
}
}
< / pre> بعد تجميع وتنفيذ الكود أعلاه ، سيؤدي ذلك إلى النتيجة التالية:
استثناء في الموضوع "الرئيسي" java.lang.UnsupportedOperationExceptionالمراجع:
في java.util.Collections$UnmodifiableMap.put(مصدر غير معروف)
في HashTable.Unmodifiable_Hashtable.main(Unmodifiable_Hashtable.java:16)
java.util.Collections.unmodifiableMap() Method