2012-01-31 3 views
36

Можно ли как-то проигнорировать эту ошибку? Мне гораздо проще просто поставить return перед кодом, который я не хочу запускать, чем комментировать его (когда комментарии перекрываются и ведут себя плохо) ...Есть ли способ игнорировать ошибку 'Unreachable statement'?

+3

почему! o почему! написав код, который ваш коллега-программист вас ненавидит ?! – Nishant

+3

@Nishant: Я часто использую 'if (2> 1) return;' для целей отладки. –

+3

@Nishant Это просто для отладки, я не оставляю куски кода, лежащего вокруг, если я напрямую не работаю с ними. –

ответ

68

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

Что я обычно делаю, это поставить поддельное заявление if перед ним. Что-то вроде:

if(true) 
    return; 
// unwanted code follows. no errors. 
i++; 
j++; 

С помощью этого кода, вы не получите ошибку Unreachable statement. И вы получите то, что хотите.

+18

Вы можете заменить 'if (1 == 1)' на 'if (true)', поскольку 1 == 1 всегда истинно. –

-7

вы должны исправить unreachable code.

public void display(){ 
    return; //move the return statement to appropriate place 
    int i; 
} 

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

1

Если вы хотите отключить/включить определенную часть кода много раз трюк от старого С может помочь вам:

some_code(); 
more_code(); 
// */ 

/* 
some_code(); 
more_code(); 
// */ 

Теперь вам нужно только написать /* в начале

2
33. if (1==1) return; 
34. System.out.println("Hello world!"); 

Он работает на других языках. Но ByteCode без строки 34.

Смежные вопросы