Sobes.tech
Junior — Middle

Дар кадом ҳолатҳо бояд намудҳои истиснои санҷишшавандаро истифода баред?

sobes.tech AI

Ҷавоб аз AI

Эъломотҳои санҷидашуда (checked) дар Java бояд дар ҳолатҳое истифода шаванд, ки хато интизор аст ва бояд ҳатман баррасӣ ё равона карда шавад. Ин кӯмак мекунад, ки таҳиягар дар бораи хатогиҳои эҳтимолӣ фикр кунад ва чораҳо андешад.

Ҳолатҳои маъмулӣ барои истифода:

  • Хатогиҳои воридот/баромад (масалан, FileNotFoundException)
  • Хатогиҳо дар вақти кор бо базаи додаҳо
  • Хатогиҳо, ки бо амалҳои шабакавӣ алоқаманданд

Эъломотҳои санҷидашуда барои ҳолатҳое мувофиқанд, ки:

  • Хатогӣ фаталӣ нест ва метавонад барқарор карда шавад
  • Талаб карда мешавад, ки коди даъваткунанда огоҳ карда шавад дар бораи мушкилии эҳтимолӣ

Масалан:

public void readFile(String path) throws IOException {
    FileReader reader = new FileReader(path);
    // ...
}

Ин ҷо, IOException як истиснои санҷидашуда аст, ва методи даъваткунанда бояд ё онро баррасӣ кунад ё барои равона кардан ба пеш гузорад.