エラーを修正する
Java の世界では、エラーは深刻な問題です。環境要因など自分では制御できない理由で発生することもあれば、私たちが書いた不適切なコードが Error を引き起こすこともあります。この演習では、終了せずに Error(具体的には StackOverflowError)を発生させるアプリケーションを観察し、修正します。実際に Error を見ることで、今後の識別に役立ちます。例外と異なり、エラーは try-catch や throws で処理することはできません。
この演習はコースの一部です
Javaにおけるデータ型と例外処理
演習の手順
- まずサンプルコードをそのまま実行します。
cyclesの値が変化しないため、呼び出しが無限ループになり、アプリケーションが失敗してStackOverflowErrorが発生します。 StackOverflowErrorを確認したら、doWorkの呼び出しでcyclesに+ 1を加えます。値が変化することで、呼び出しの無限ループが止まります。- もう一度コードを実行し、アプリケーションが正常に動作して
StackOverflowErrorを回避できることを確認します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
public class ErrorGeneration {
public static void main(String[] args) {
System.out.println("Started the work");
doWork(0);
System.out.println("Work complete");
}
public static void doWork(int cycles) {
if (cycles < 10) {
// Add +1 to cycles after running
doWork(cycles);
}
}
}