interface I {
void f();
}
interface II extends I {
@Override
void f();
}
class C implements I {
@Override
public void f() {
}
}
class Test extends NonExisting {
@Override
void foo() {}
}
class Test1 implements NonExistingIface {
@Override
void foo() {}
}
class Test2 extends Test {
@Override
void foo() {}
@Override
void foo2() {}
}