ПочатиПочніть безкоштовно

Виправлення помилки

Помилки (Errors) — це серйозні проблеми у світі Java. Іноді вони виникають через зовнішні чинники, які не під нашим контролем. Інколи ми самі пишемо некоректний код, що призводить до Error. У цій вправі ви спочатку спостерігатимете, а потім виправите застосунок, який ніколи не завершується і спричиняє Error (зокрема StackOverflowError). Побачивши Error, ви зможете легше розпізнавати їх надалі. На відміну від винятків (exceptions), помилки не можна опрацьовувати за допомогою try-catch або throws.

Ця вправа є частиною курсу

Типи даних і винятки в Java

Переглянути курс

Інструкції до вправи

  • Запустіть зразок коду без змін, де значення cycles ніколи не змінюється. Це призведе до нескінченного ланцюжка викликів і збою застосунку з StackOverflowError.
  • Після того як побачите StackOverflowError, додайте + 1 до cycles у виклику doWork, щоб значення cycles змінювалося й зупинило нескінченний ланцюжок викликів.
  • Перезапустіть код, щоб побачити, що застосунок успішно працює і уникає 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);
		}
	}
}
Редагувати та запускати код