Java で到達不能ステートメント コード エラーを解決する方法?

Java De Dao Da Bu Nengsutetomento Kodo Erawo Jie Juesuru Fang Fa



開発者が直面する最も一般的なエラーは、ステートメント コードが非表示であり、実行中にエラーが生成されないため、到達不能なステートメント コードです。この部分は、コードの到達不可能なセクションにあるため、コンパイラーはコードのこの部分を訪問したりコンパイルしたりしないため、ある意味隠蔽されています。

この記事では、Java で到達不能なステートメント コード エラーを処理する手順を説明します。

Java で到達不能ステートメント コード エラーを解決するには?

Java での到達不能ステートメント コード エラーの原因として考えられるものは複数あり、それに対応する解決策も含まれます。このエラーは構文ベースではなく、純粋に論理エラーであるか、場合によっては人的エラーによって発生する可能性があります。解決策を説明する前に、まず、到達不能なステートメント コード エラーの原因となる可能性がある理由を確認してください。







理由 1: コードが「break」ステートメントの後に挿入される



壊す 」ステートメントは、意思決定ステートメントとループに沿って利用されます。目的の状態に到達すると、実行サイクルが停止します。コンパイラは、「」の次に到着する行に到達しません。 壊す 」というステートメントがそのブロックにあります。コンパイラは実行サイクルを停止し、DOM 階層内の次のステートメントに進みます。



以下のコードにアクセスしてください。





クラス 半分 {
公共 静的 空所 主要 ( [ 引数 ) {
ために ( 整数 = 0 ; <= 10 ; ++ ) {
もしも ( == 5 ) {
壊す ;
システム プリントイン ( ) ;
}
}
}
}

上記のコードでは、「」からの値が表示されるはずです。 0 ' に ' 4 ”。ただし、「」の後のステートメントを使用すると、 壊す ” ステートメントを実行すると、到達不能ステートメント エラーが発生します。



出力には、到達不能なステートメント エラーが発生したことが示されています。

解決策: 「break」ステートメントの上にコードを挿入してみてください。

解決策は、「」が含まれるブロックの外側でステートメントを使用することです。 ブロック 」という発言が活用されている。たとえば、上記のコードは、ステートメントが「」の外側に配置されている場合に正確に実行されます。 もしも ” ステートメント ブロックは次のようになります。

IDE からの上記のスナップショットは、到達不能ステートメント コード エラーが解決されたことを示しています。

理由 2: 「Continue」ステートメントの後にコードが挿入されている

続く ” ステートメントは、プログラマが特定の反復をスキップしてループで実行したい場合に使用されます。コンパイラは、「」を見つけるたびに実行サイクルを中断します。 続く 」というステートメントをコードに含めます。そのため、「」の後にコードが実行されます。 続く ” ステートメントを実行すると、「ステートメント コードに到達できません」エラーが発生します。

クラス 半分 {
公共 静的 空所 主要 ( [ 引数 ) {
ために ( 整数 = 0 ; <= 10 ; ++ ) {
もしも ( == 5 ) {
続く ;
システム プリントイン ( ) ;
}
}
}
}

上記のコードの出力は次のようになります。

出力には、「到達不能コード エラー」が発生したことが示されています。

解決策: 「Continue」ステートメント ブロックの外側にコードを挿入します。

これを解決するには、「」の外側のコードを利用するだけです。 続く ” ステートメントブロック:

位置を変更すると、エラーは自動的に解決されます。

理由 3: コードが「return」ステートメントの後に挿入されている

このシナリオは上記と同じで、コンパイラは「」の後に配置されたコードの部分をスキップします。 戻る ' 声明。それは「」だからです。 戻る ” ステートメントは終了であり、以下のスナップショットに示すように、その後コンパイラーは何も実行しません。

解決策: main() メソッドの「return」ステートメントの後にコードが挿入される

これを解決するには、「」の後にコードを入力してください。 戻る ” main() メソッド内のステートメント:

理由 4: 「throw」ステートメントの後にコードが挿入される

「」の後に挿入されたコード行 投げる 」のステートメント 試す ” ブロックはコンパイラによってコンパイルされないままになります。たとえば、以下のコードにアクセスしてください。

クラス 半分 {
公共 静的 空所 主要 ( [ 引数 ) //main()メソッドの作成
{
試す {
投げる 新しい 例外 ( 「最初の例外」 ) ;
システム プリントイン ( 「スロー後例外」 ) ;
}
キャッチ ( 例外 k ) {
システム プリントイン ( k. メッセージを取得する ( ) ) ;
}
}
}

上記コードでは、「」の後にダミーメッセージを表示します。 投げる 」というキーワード。

上記のコードの実行後:

上のスナップショットは、「」以降のコードの使用による「到達不能コード エラー」の発生を示しています。 投げる ' 声明。

解決策: 「throw」キーワードの前にコードを挿入します。

これを解決するには、「」の前に日付を挿入してみてください。 投げる ' 声明。たとえば、エラーが解決されたコードの以下のスナップショットを参照してください。

上記の出力は、例外が削除され、コードが適切に動作していることを示しています。

結論

到達不能なステートメントコード 」エラーは、コンパイラが到達できない場所にコード行が記述されている場合に発生します。考えられる場所は、「block ステートメントの後」、「Continue ステートメントの後」、「return ステートメントの後」、または「throw ステートメントの下」などです。これは論理エラーであり、コードを複数回見直すことで簡単に解決できます。そしてコンパイラーがコードをコンパイルする方法を理解します。