Interface Unmodifiable

All Known Implementing Classes:
UnmodifiableBag, UnmodifiableBidiMap, UnmodifiableBoundedCollection, UnmodifiableCollection, UnmodifiableEntrySet, UnmodifiableIterator, UnmodifiableList, UnmodifiableListIterator, UnmodifiableMap, UnmodifiableMapEntry, UnmodifiableMapIterator, UnmodifiableMultiSet, UnmodifiableMultiValuedMap, UnmodifiableNavigableSet, UnmodifiableOrderedBidiMap, UnmodifiableOrderedMap, UnmodifiableOrderedMapIterator, UnmodifiableQueue, UnmodifiableSet, UnmodifiableSortedBag, UnmodifiableSortedBidiMap, UnmodifiableSortedMap, UnmodifiableSortedSet, UnmodifiableTrie

public interface Unmodifiable
Marker interface for collections, maps and iterators that are unmodifiable.

This interface enables testing such as:

 if (coll instanceof Unmodifiable) {
   coll = new ArrayList(coll);
 // now we know coll is modifiable
Of course all this only works if you use the Unmodifiable classes defined in this library. If you use the JDK unmodifiable class via java.util Collections then the interface won't be there.