В этой статье демонстрируется процедура обработки ошибки недостижимого кода инструкции в Java.
Как устранить ошибку кода недостижимого оператора в Java?
Несколько причин могут быть причинами недостижимых ошибок кода оператора в Java, наряду с соответствующими решениями. Эта ошибка не связана с синтаксисом, это чисто логическая ошибка или в некоторых случаях она может возникать из-за человеческого фактора. Прежде чем перейти к решениям, давайте сначала рассмотрим причины, которые могут быть причиной недостижимых ошибок кода оператора:
Причина 1: код вставлен после оператора «break»
“ перерыв » используется вместе с оператором принятия решения и циклами. Он останавливает цикл выполнения, если желаемое состояние достигнуто. Компилятор не достигает строки, следующей за « перерыв » в этом блоке. Компилятор останавливает цикл выполнения и переходит к следующему оператору в иерархии DOM.
Посетите приведенный ниже код:
сорт Половина {
публичный статический пустота основной ( Нить [ ] аргументы ) {
для ( инт я '=' 0 ; я <= 10 ; ++ я ) {
если ( я == 5 ) {
перерыв ;
Система . вне . печать ( я ) ;
}
}
}
}
Приведенный выше код должен отображать значения из « 0 ' к ' 4 ». Но, с использованием утверждения после « перерыв » возникает ошибка оператора unreachable:
Выходные данные показывают возникновение ошибки недостижимого оператора.
Решение: попробуйте вставить код над оператором «break».
Решение состоит в том, чтобы использовать оператор вне блока, в котором « блокировать используется оператор ». Например, приведенный выше код выполняется точно, если оператор находится за пределами « если », как показано ниже:
Приведенный выше снимок из среды IDE показывает, что теперь ошибка кода недоступной инструкции устранена.
Причина 2: код вставлен после оператора «продолжить»
“ продолжать ” используется, когда программист хочет пропустить определенную итерацию, чтобы выполнить цикл. Компилятор прерывает цикл выполнения всякий раз, когда находит « продолжать ” в коде. Вот почему код, выполняемый после « продолжать » вызывает ошибку «недостижимый код оператора»:
сорт Половина {публичный статический пустота основной ( Нить [ ] аргументы ) {
для ( инт я '=' 0 ; я <= 10 ; ++ я ) {
если ( я == 5 ) {
продолжать ;
Система . вне . печать ( я ) ;
}
}
}
}
Вывод приведенного выше кода выглядит следующим образом:
Вывод показывает, что произошла «ошибка недостижимого кода».
Решение. Вставьте код за пределы блока операторов continue.
Чтобы решить эту проблему, просто используйте код вне « продолжать блок операторов:
После изменения положения ошибка устраняется автоматически.
Причина 3: код вставлен после оператора «return»
Этот сценарий такой же, как и выше, компилятор пропускает часть кода, которая помещается после « возвращаться ' заявление. Именно потому, что « возвращаться ” — это конец, после которого компилятору нечего делать, как показано на снимке ниже:
Решение: Код, вставленный после оператора «return» в методе main()
Чтобы решить эту проблему, введите код после « возвращаться ” в методе main():
Причина 4: код вставлен после оператора «throw»
Строка кода, вставленная после « бросать заявление в разделе « пытаться ” остается не скомпилированным компилятором. Например, посетите приведенный ниже код:
сорт Половина {публичный статический пустота основной ( Нить [ ] аргументы ) //создание метода main()
{
пытаться {
бросать новый Исключение ( «Первое исключение» ) ;
Система . вне . печать ( 'После броска исключения' ) ;
}
ловить ( Исключение к ) {
Система . вне . печать ( к. получить сообщение ( ) ) ;
}
}
}
В приведенном выше коде отобразите фиктивное сообщение, которое пишется после « бросать ключевое слово.
После выполнения вышеуказанного кода:
На приведенном выше снимке показано возникновение «ошибки недостижимого кода» из-за использования кода после « бросать ' заявление.
Решение: вставьте код перед ключевым словом «throw»
Чтобы решить эту проблему, попробуйте вставить дату перед « бросать ' заявление. Например, посетите приведенный ниже снимок кода с исправленной ошибкой:
Приведенный выше вывод показывает, что исключение было удалено, и теперь код работает правильно.
Заключение
“ недостижимый код оператора ” возникает, когда строка кода пишется в месте, недоступном для компилятора. Возможные места: «после оператора блока», «после оператора continue», «после оператора return» или «ниже оператора throw» и т. д. Это логическая ошибка, и ее можно легко устранить, просмотрев код несколько раз. и понимание того, как компилятор компилирует код.