muy simple.
En cierta clase o interfaz en algún lugar que tienen un método que debería llamarse: [modificador de acceso] [tipo de retorno] Nombre ([lista de parámetros]) ...
por ejemplo:
public void callback()
Luego, en alguna clase, anulas ese método, o lo implementas, o algo. Luego, en el código que realiza la devolución de llamada, toma un argumento del tipo de la clase que tiene el método de devolución de llamada. Por ejemplo:
public interface Callback
{
public void callback();
}
public class Callbackee implements Callback {
public void callback()
{
System.out.println("Hey, you called.");`
}
static{
new Callbackee().doCallback();
}
}
public class CallBacker {
Callback call;
public void registerCallback(Callback call) {
this.call=call;
}
//then just do the callback whenever you want. You can also, of course, use collections to register more than one callback:
public void doCallback() {
call.callback();
}
}
Si desea ver ejemplos de métodos de devolución de llamada de la API de Java, mira MouseListener, MouseMotionListener, KeyListener y así sucesivamente. Por lo general, puede registrar más de una devolución de llamada, por supuesto.
Te sugiero que des un poco más de detalle. No creo que puedas implementar métodos usando anotaciones, probablemente quieras decir algo más. – krico