@Test(expectedExceptions = { IndexOutOfBoundsException.class }) public void outOfBounds() { assertThat(weakList.get(5), is(nullValue())); }
@Override public T get(int index) { return getHardReference(refs.get(index)); }
WeakList extends AbstractList<T> { @Override public T get(int index) { return getHardReference(refs.get(index)); } }
WeakList extends AbstractList<T> { @Override public T get(int index) { return getHardReference(refs.get(index)); }  }
WeakList extends AbstractList<T> { @Override public T get(int index) { return getHardReference(refs.get(index)); }  @Override T get(int index); @Override boolean add(T o); @Override void add(int index, T o); @Override void clear(); @Override T remove(int index); @Override T set(int index, T element); @Override boolean contains(Object o); @Override int size(); List<T> getHardReferences(); void removeAllNullElements(); }
WeakList extends AbstractList<T> { @Override public T get(int index) { return getHardReference(refs.get(index)); }  @Override T get(int index); @Override boolean add(T o); @Override void add(int index, T o); @Override void clear(); @Override T remove(int index); @Override T set(int index, T element); @Override boolean contains(Object o); @Override int size(); List<T> getHardReferences(); void removeAllNullElements();  }