Pregunta

¿Hay alguna forma de decirle al depurador que se detenga justo antes de regresar, en cualquier declaración que salga del método, ya sea devolución, excepción o caída al fondo? Me inspira el hecho de que el editor de Java me muestra todos los lugares en los que mi método puede salir; los resalta cuando hace clic en el tipo de retorno de la declaración del método (Mark Occurrences habilitado).

[eclipse 3.4]

¿Fue útil?

Solución

Coloque un punto de interrupción en la línea de la firma del método. Ahí es donde escribes

public void myMethod() {

Luego haga clic derecho en el punto de interrupción y seleccione "Propiedades de punto de interrupción". En la parte inferior de la ventana emergente hay dos casillas de verificación: "Entrada de método", "Salida de método". Comprueba lo último.

Otros consejos

Puede establecer un punto de interrupción de método.

Haga doble clic en el margen al lado de la declaración del método. Aparece un punto de interrupción con una decoración de flecha. Al hacer clic con el botón derecho para examinar las propiedades, puede establecer " Suspender en: " para " Entrada de método " y / o "Método de salida".

Puede leer más sobre ellos en Eclipse Cookbook .

Buena pregunta. Fuera de mi cabeza, haría esto:

public void method(Object stuff) {
    try {
        /* normal code */
    } finally {
        int x = 0;
    }
}

Puede establecer el punto de interrupción en la línea x = 0, y SIEMPRE se ejecutará sin importar dónde regrese. Incluso con una excepción, se ejecutará.

El problema con esto es el alcance. A menos que defina variables fuera del bloque try, no podrá ver sus valores cuando llegue al bloque final, ya que saldrán del alcance.

Tener que colocar solo 5 puntos de interrupción (uno para cada declaración de devolución, lo que sea) puede funcionar mejor.

Espero que haya una mejor manera, me encantaría saberlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top