class X {
void ok() {
enum Foo {
A, B, C;
void m() {
}
}
Foo.A.m();
}
void modifiers() {
static enum E1 {}
private enum E2 {}
public enum E3 {}
protected enum E4 {}
abstract enum E5 {}
strictfp enum E6 {}
final enum E7 {}
}
static int sf = 0;
int f = 2;
void capture() {
int l = 5;
final int cst = 2;
enum Foo {
A, B, C {
void m() {
System.out.println(x);
System.out.println(l);
System.out.println(f);
System.out.println(sf);
System.out.println(cst);
}
};
int x = 2;
void m() {}
}
}
U getAndSet(U u) {
enum Xyz {
A;
U u;
}
U old = Xyz.A.u;
Xyz.A.u = u;
return old;
}
}