class Test {
interface I {
default void f() {}
}
interface J {
static void f() {}
}
static class IJ implements I, J {}
static class JI implements J, I {}
public static void main(String[] args) {
new IJ(). f();
new JI(). f();
IJ.f();
JI.f();
J.f();
}
}
class Test2 {
interface I {
static void f(String s) {}
}
interface J {
default void f(T t) {}
//another pair
default void j(T t) {}
static void j(String s) {};
}
static class IJ implements I, J {}
public static void main(IJ s, J j) {
s.f("");
j.j("");
}
}