Having the abstract implementation throw UnsupportedOperationException as the default behavior