class nest { interface Func<A,B> { B apply(A x); } public static void main (String [] args) { { int a = 5; Func<Integer,Integer> b = new Func<Integer,Integer>() { public Integer apply(Integer x) { return a*x; } }; { a = 7; System.out.println(b.apply(3)); } } }die nicht-lokale Variable a muà als final deklariert werden, dadurch ist die Zuweisung (a = 7) verboten.