Existem métodos anônimos em Java?

Nestes últimos meses, vez ou outra, precisei lidar com funções anônimas (os famosos lambdas, comuns em programação fucional) em meus programas (por exemplo, utilizando EmacsLisp para remapear o teclado no Emacs, convertendo caracteres acentuados em comandos LaTeX apropriados, e, mais recentemente, num utilitário Python que estou escrevendo para realizar algumas tarefas no meu Gentoo Linux).

Aí bateu a curiosidade: existem métodos anônimos (e/ou outros recursos de programação funcional) em Java (ou alguma forma de emulá-lo(s))? Se não, há alguma perspectiva de que tais recursos sejam implementados em versões futuras da plataforma? Ou isto não seria interessante?

Nao, nao ha metodos anonimos. Voce pode conseguir isso com alguma linguagem de scripting, como beanshell, jpython, groovy etc…

Rafael

Se eu entendi, atualmente, não.

Tem umas alternativas meia-boca:

Groovy, linguagem de script para roda na JVM possui este recurso, os closures.

informações:
http://java.about.com/b/a/142215.htm

mas o ideal é uma linguagem especializada =/

O mais perto que chegamos disso usando Java puro eh com inicializadores estaticos e inner classes anonimas:

[code]Foo foo = new Foo() {{
// codigo executado imediatamente
}

public void execute(Bar bar) {
// codigo executado em foo.execute()
}
};[/code]