In a Java collection UnsupportedOperationException is thrown
when the requested operation is not supported by the collection.
It is an unchecked exception that is thrown on optional operations.
If there is an optional add() or remove() methods in a read only
collection, then this exception can be thrown.