public class a { void f(int i) { } void f(int i) { new c1() { public void f1() {} public void f1() {} }; } } abstract class c1 { abstract void f1(); } interface ii { abstract void f1(); void f2(); } class a { } class Foo { void f() { class Bar { } class Bar { } } } class c2 { class c3 { void f() { class c2 { } } } } class cont { class B { } { class B { } } class B { } } class cont2 { { class B { } } class B { } } class ok { class Local{}; class AnotherLocal { class Local {}; void bar() { class Local {}; Local l; } } } class ok2 { public ok2() {} public void ok2() {} }