Validação usando checking. Como funciona?

Pessoal, eu sei como usar o checking do Vraptor.

[code]this.validator.checking(new Validations() {
{

		}
	});[/code]

Usar é fácil, mas eu não entendi como funciona. Ele cria um objeto e depois abre 2 chaves ? Não entendi bem essa estrutura, onde eu posso aprender mais disso ?
Quero saber como realmente funciona isso. Obrigado.

    this.validator.checking(new Validations() {  
                {  
                      
                }  
            });  

quer dizer, em Java:

  1. Criamos uma classe anônima, derivada da classe Validations (ou seja,
new Validations() {
    .....
}
  1. Não sobrepomos nenhum método dela (é por isso que não há nenhuma definição de método dentro das chaves principais)
  2. Nessa classe anònima, o código de inicialização (que é executado por todos os construtores) também é vazio (são as chaves secundárias que aparecem depois das chaves principais).

Bacana, legal que hoje mesmo eu parei pra pensar nisso na hora do almoço e acabei lembrando do código de inicialização. Pouca gente usa isso.
Valeu pela resposta.
Abraço.

Outra biblioteca que usa isso bastante é o JMock…

A gente usava ela bastante quando criou o VRaptor 3, por isso que o validator ganhou essa sintaxe “mágica” =)