public interface Test { boolean remove(Object o); /** @see TestImpl#remove(int) */ E remove(int idx); } public class TestImpl implements Test { @Override public boolean remove(Object o) { return false; } @Override public E remove(int idx) { return null; } }