Quizás la manera más cercana de hacer eso en Java es la expresión doble del paréntesis, durante la construcción.
Foo foo = new Foo() {{
bar();
reset(true);
myVar = getName(); // Note though outer local variables must be final.
}};
Alternativamente, métodos que devuelven this
pueden encadenarse:
myName =
foo
.bar()
.reset(true)
.getName();
donde bar
y reset
métodos devuelven this
.
Sin embargo, querer hacer esto tiende a indicar que el objeto no tiene un comportamiento lo suficientemente rico. Intente refactorizar en la clase llamada. Tal vez hay más de una clase tratando de salir.
Gracias por todas las respuestas. Estaba bastante seguro de que no existía tal sintaxis. Un montón de buenas sugerencias para diversas situaciones. –