Iterator<T> () { return new Iterator<T>() { @Override public boolean hasNext() { return false; } @Override public T next() { return GenericsTest1.next1(GenericsTest1.this); } @Override public void remove() { } }; }