Adakah pelaksanaan diteruskan selepas menangkap Java?
Adakah pelaksanaan diteruskan selepas menangkap Java?

Video: Adakah pelaksanaan diteruskan selepas menangkap Java?

Video: Adakah pelaksanaan diteruskan selepas menangkap Java?
Video: Disinkronkan vs ReadWriteLock vs StampedLock [Java Multithreading] 2024, April
Anonim

Program disambung semula perlaksanaan apabila pengecualian ditangkap di suatu tempat oleh " tangkap "sekat. Menangkap pengecualian dijelaskan kemudian. Anda boleh membuang sebarang jenis pengecualian daripada kod anda, selagi tandatangan kaedah anda mengisytiharkannya. Anda juga boleh membuat pengecualian anda sendiri.

Lebih-lebih lagi, adakah akhirnya dilaksanakan selepas menangkap Java?

Ya benar kehendak . Tidak kira apa yang berlaku dalam percubaan anda atau tangkap blok melainkan sebaliknya System. exit() dipanggil atau JVM ranap. jika terdapat sebarang pernyataan pulangan dalam blok, akhirnya akan jadilah dilaksanakan sebelum kenyataan pulangan itu.

Selain di atas, di manakah pelaksanaan disambung semula selepas pengecualian dilemparkan dan ditangkap? yang pelaksanaan disambung semula Dimanakah pengecualian ialah ditangkap , iaitu pada permulaan tangkap blok yang khusus menangani arus pengecualian menaip. yang tangkap blok adalah dilaksanakan , yang lain tangkap blok diabaikan (fikirkan berbilang tangkap blok sebagai pernyataan suis).

Kemudian, adakah membuang pengecualian menghentikan pelaksanaan Java?

3 Jawapan. Jika awak melontar yang pengecualian , cara perlaksanaan kehendak berhenti dan juga pengecualian ialah dilemparkan kepada kaedah pemanggil. melontar sentiasa mengganggu perlaksanaan aliran kaedah semasa.

Adakah akhirnya dilaksanakan jika membuang tangkapan?

ya. Lihat dokumentasi: The akhirnya blok selalu melaksanakan apabila blok try keluar. Catatan: Jika JVM keluar semasa mencuba atau tangkap kod sedang dilaksanakan , kemudian akhirnya blok mungkin tidak laksanakan.

Disyorkan: