Bir hatayı düzeltmek
Java dünyasında hatalar (Errors) ciddi sorunlardır. Bazen kontrolümüz dışındaki çevresel problemlerden kaynaklanırlar. Bazen de bir Error oluşmasına neden olan kötü kod yazabiliriz. Bu egzersizde, asla sonlanmayan ve bir Error (özellikle de StackOverflowError) üreten bir uygulamayı önce gözlemleyecek, sonra düzelteceksin. Bir Error görmen, gelecekte onları tanımana yardımcı olacak. İstisnaların aksine, hatalar try-catch ile ya da throws kullanılarak ele alınamaz.
Bu egzersiz, kursun bir parçasıdır
Java'da Veri Türleri ve İstisnalar
Egzersiz talimatları
cyclesdeğerinin hiç değişmediği örnek kodu olduğu gibi çalıştır; bu durum sonsuz çağrı döngüsüne yol açar, uygulamanın çökmesine neden olur ve birStackOverflowErrorüretir.StackOverflowErrorgördükten sonra,doWorkçağrısındacyclesdeğerine+ 1ekle; böylececyclesdeğişecek ve sonsuz çağrı döngüsü duracaktır.- Kodu tekrar çalıştır ve uygulamanın başarıyla çalıştığını,
StackOverflowErrorhatasından kaçındığını gör.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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);
}
}
}