Подтвердить что ты не робот

System.Diagnostics.Debugger.Break() как с помощью java?

Есть ли способ сигнализировать точку останова в Java, например System.Diagnostics.Debugger.Break() в С#?

4b9b3361

Ответ 1

Не совсем. Но я предполагаю, что он может быть реализован путем доступа к интерфейсу отладки через интерфейс и установки точки останова в текущий класс, где реализована функция Break(). Интересный вопрос, хотя.

Ответ 2

да, я хотел что-то вроде этого, поэтому я реализовал довольно простое решение из моих дней C. Это может быть полезно, если вы хотите получить легкий ответ.

  public class DebugHelper
  {

       public static breakHere()
       {
            int i = 0;  //  Set breakpoint on this line in your IDE
       }
  }

Использовать этот метод. Поместите контрольную точку в свой код на "int я = 0;" линия. И вызовите этот метод в коде, который вы отлаживаете. Это быстрый ответ на получение динамической отладки и быстрее, чем часы на переменной.

Пример...

 private something(...)
 {
       for( ... )
       {
          if( null == value ) DebugHelper.breakHere();
       }
 }

Конечно, в C вы можете поместить правильную инструкцию точки останова ASM;-) Это работает отлично для меня в редких случаях, я хочу что-то вроде этого.

Ответ 3

Как насчет того, чтобы бросить и поймать конкретное исключение для этой цели и создать контрольную точку исключения в вашей среде IDE?

Ответ 4

Обычно точки прерывания - это функция, предлагаемая самой IDE. Возможно, вы можете взглянуть на Java Debugger Architecture.