Új hozzászólás Aktív témák

  • Szmeby

    tag

    válasz Atlantisz48 #7916 üzenetére

    Ha komolyabban szeretnél foglalkozni a dologgal, telepíts egy IDE-t magadnak (IntelliJ Idea, Eclipse, Netbeans, akármi), sok szenvedéstől kímél meg, ha ebben írod a programod.

    Ugyanis fordítási hibád van, és ezek azonnal jelzik neked. Időnként még használható javítást is tudnak prezentálni. Bár az üzenet egyértelmű: a Thread.sleep() metódus ellenőrzött kivételt dob, amivel neked kezdened kell valamit.
    Vagy elkapod, és "kezeled":

    try {
    while (idozito < 5){
    System.out.print("*");
    Thread.sleep(500);
    idozito = idozito + 1;
    }
    } catch (InterruptedException e) {
    // a te esetedben ilyen amúgyse fog történni, de kezelni kötelező
    System.err.println("Bajci van! Valami kilőtte alólam a szálat.");
    e.printStackTrace();
    }

    Vagy továbbpasszolod a kivételt a hívónak a stacken eggyel feljebb, vagyis a ciklust tartalmazó metódusod végére a paraméterek után odabiggyeszted a throws InterruptedException szavakat. Ilyenkor viszont a hívóban kell kezelned a problémát... vagy onnan is továbbküldöd... teheted ezt egészen addig, amíg el nem éred a main metódust, de ha az sem kezeli, akkor a programod a kivételdobás pillanatában rövid úton le fog állni (mivel a kivételt senki sem kezelte le).

    Kis szösszenet az InterruptedExcpetion-ről.

Új hozzászólás Aktív témák

Hirdetés