Junior — Middle
Барои чӣ истисноҳо, ки бояд дар код ба таври равшан баррасӣ шаванд, пешбинӣ шудаанд?
sobes.tech AI
Ҷавоб аз AI
Дар Java мавҷуданд ду навъи истисно: назоратшаванда (checked) ва ғайриназоратшаванда (unchecked). Истисноҳое, ки бояд ба таври равшан коркард шаванд (checked exceptions), барои маҷбур кардани барномасозӣ, ки эҳтимолияти хатоҳои эҳтимолиро пешбинӣ кунад, пешбинӣ шудаанд, ки метавонанд дар вақти иҷрои барнома рӯй диҳанд.
Мақсадҳои checked exceptions:
- Таъмини боэътимодӣ: Барномасозӣ бояд ё истисноро баррасӣ кунад (try-catch), ё онро дар имзои усул эълон кунад (throws), ки ин муқовимат ба хатоҳоро зиёд мекунад.
- Идораи равшанонаи хатоҳо: Имкон медиҳад, ки равшан нишон диҳад, ки кадом хатоҳо метавонанд рӯй диҳанд ва чӣ гуна бо онҳо кор кардан лозим аст.
Масалан:
public void readFile(String path) throws IOException {
FileReader file = new FileReader(path);
// хондани файл
}
try {
readFile("file.txt");
} catch (IOException e) {
System.out.println("Хатои хондани файл: " + e.getMessage());
}
Ин гуна checked exceptions кӯмак мекунанд, ки код боэътимод ва пешгӯишаванда нависад, ва таҳиягарро маҷбур мекунанд, ки дар бораи хатогиҳои эҳтимолӣ ва роҳҳои идоракунии онҳо фикр кунад.