Я встретил такой код и комментарии в классе java.util.ImmutableCollections
:
static final class List0<E> extends AbstractImmutableList<E> {
...
@Override
public E get(int index) {
Objects.checkIndex(index, 0); // always throws IndexOutOfBoundsException
return null; // but the compiler doesn't know this
}
...
}
Почему не просто throw new IndexOutOfBoundsException(...)
? Какая причина?