Но есть способ использовать параметры.
Любой объявленный метод внутри анонимного класса может использовать свойства
- внешнего класса final
- параметры метода и окончательный метод
- переменные
следующий код демонстрирует это
public class Foo
{
private String value = "Hello ";
public void anonymousTest(final boolean asc)
{
final String world = "world";
new Comparable<String>()
{
@Override
public int compareTo(String o)
{
System.out.println( value + world);
int cmp = value.compareTo(o);
return asc ?cmp :0-cmp;
}
};
}
}
Надеюсь, что пример поможет.