Sobes.tech
Intern

Ի՞նչ է բացառությունը։

sobes.tech AI

Պատասխան AI-ից

Արտակարգ իրավիճակը այն իրադարձությունն է, որը խանգարում է ծրագրի նորմալ կատարմանը։ Այն առաջանում է սխալի կամ անսպասելի իրավիճակի դեպքում։

Արտակարգ իրավիճակներն են՝

  • Կառավարելի (Checked)՝ պահանջում են մշակում կամ հայտարարում են մեթոդի ստորագրության մեջ (օրինակ՝ ֆայլերի կամ ցանցի հետ աշխատելիս):
  • Չկառավարելի (Unchecked) կամ Ինքնագործող արտակարգ իրավիճակներ (RuntimeException)՝ սովորաբար ցույց են տալիս ծրագրի տրամաբանության սխալներ և չեն պահանջում բացահայտ մշակում (օրինակ՝ զրոյով բաժանում կամ զանգվածի սահմաններից դուրս մուտք):
  • Սխալներ (Errors)՝ ներկայացնում են լուրջ խնդիրներ, որոնցից ծրագրին սովորաբար չի հաջողվում վերականգնվել (օրինակ՝ հիշողության պակաս):

Արտակարգ իրավիճակների մշակման մեխանիզմը թույլ է տալիս առանձնացնել սխալները մշակող կոդը ծրագրի հիմնական տրամաբանությունից։ Սա բարելավում է կոդի ընթեռնելիությունը և պահպանելիությունը։

Արտակարգ իրավիճակների մշակման համար օգտագործվում են try-catch-finally բլոկներ (Java, C#) կամ նման կառուցվածքներ (try-except-finally Python-ում):

try {
    // Կոդ, որը կարող է առաջացնել արտակարգ իրավիճակ
    int result = 10 / 0; // ArithmeticException
} catch (ArithmeticException e) {
    // Կատարման կոնկրետ արտակարգ իրավիճակի մշակումը
    System.err.println("Սխալ: " + e.getMessage());
} catch (Exception e) {
    // Բոլոր մյուս արտակարգ իրավիճակների մշակումը
    System.err.println("Անհայտ սխալ տեղի ունեցավ");
} finally {
    // Կոդ, որը կատարվում է անկախ նրանից, տեղի ունեցավ արտակարգ իրավիճակ թե ոչ
    System.out.println("Finally բլոկը կատարվեց");
}