Zmienna List<ListItem> list;
w klasie UnorderedList
jest niezainicjalizowana. Powinno być:
List<ListItem> list = new List<>();
a najlepiej:
private final List<ListItem> list = new List<>();
To działa pod warunkiem, że dodam bardzo dużo nowych linii kodu, które zaproponowało mi IDE, do klasy UnorderedList. W sensie aż tyle:
@Override
public int size() {
return 0;
}
@Override
public boolean isEmpty() {
return false;
}
@Override
public boolean contains(Object o) {
return false;
}
@Override
public Iterator<ListItem> iterator() {
return null;
}
@Override
public Object[] toArray() {
return new Object[0];
}
@Override
public <T> T[] toArray(T[] ts) {
return null;
}
@Override
public boolean add(ListItem listItem) {
return false;
}
@Override
public boolean remove(Object o) {
return false;
}
@Override
public boolean containsAll(Collection<?> collection) {
return false;
}
@Override
public boolean addAll(Collection<? extends ListItem> collection) {
return false;
}
@Override
public boolean addAll(int i, Collection<? extends ListItem> collection) {
return false;
}
@Override
public boolean removeAll(Collection<?> collection) {
return false;
}
@Override
public boolean retainAll(Collection<?> collection) {
return false;
}
@Override
public void clear() {
}
@Override
public boolean equals(Object o) {
return false;
}
@Override
public int hashCode() {
return 0;
}
@Override
public ListItem get(int i) {
return null;
}
@Override
public ListItem set(int i, ListItem listItem) {
return null;
}
@Override
public void add(int i, ListItem listItem) {
}
@Override
public ListItem remove(int i) {
return null;
}
@Override
public int indexOf(Object o) {
return 0;
}
@Override
public int lastIndexOf(Object o) {
return 0;
}
@Override
public ListIterator<ListItem> listIterator() {
return null;
}
@Override
public ListIterator<ListItem> listIterator(int i) {
return null;
}
@Override
public List<ListItem> subList(int i, int i1) {
return null;
}
};