Bagaimanakah saya memberitahu orang yang tidak baik dalam pengaturcaraan, perbezaan antara kesilapan dan pengecualian?


Jawapan 1:

Ini adalah bagaimana saya membayangkan perbezaan antara Ralat dan Pengecualian.

Ralat:

Di sini ANDA cuba untuk menjalankan program anda tetapi sayangnya Alam En. (Persekitaran aplikasi anda) melempar batu besar (ralat) kepada anda kerana sebab tertentu.

Jadi bayangkan jika anda cuba menangkap batu besar itu (iaitu mengendalikan kesilapan) maka ia akan menyakiti anda dengan teruk!

Kesalahan berlaku pada masa tamat. Tidak mustahil untuk pulih dari kesilapan. Oleh itu, Kesalahan tidak dimaksudkan untuk ditangkap. Jadi, sekiranya anda menangkap kesilapan (bayangkan bahawa batu besar) anda tidak boleh sembuh daripadanya

Pengecualian:

Di sini ANDA cuba untuk menjalankan program anda tetapi sayangnya Tapak Permohonan (permohonan anda) melempar batu kecil (pengecualian) kepada anda kerana sebab tertentu

Sekarang anda boleh cuba menangkap batu kecil atau meninggalkannya.

Jika anda meninggalkan maka ia akan mencederakan anda dan jika anda menangkap maka anda akan menyelamatkan diri!

Sekiranya pengecualian berlaku, anda boleh mengatasinya menggunakan blok cuba-tangkapan. Terdapat konsep keseluruhan berdasarkan ini yang disebut sebagai Pengecualian Pengecualian.

______________________________________________________

Ini bukan contoh sempurna untuk membayangkan Kesilapan vs Pengecualian. Anda boleh bayangkan lebih banyak contoh dan membuat sesuatu yang lebih relevan. Sesetengah pengaturcara mungkin tidak suka penjelasan ini .. namun lukisan ini cukup untuk menjelaskan kepada orang yang tidak baik dalam pengaturcaraan :)

Untuk rujukan :

  • Perbezaan Antara Kesalahan Vs Pengecualian Di Jawa Perbezaan antara Kesilapan vs Pengecualian di Jawa - Temubual pertanyaan

Jawapan 2:

Dalam konteks Jawa, biasanya Pengecualian disebabkan oleh kesilapan logik dalam kod pengatur atau gagal menangani situasi tertentu secara proaktif. Kesilapan adalah hasil daripada persekitaran runtime yang tersandung pada keadaan apabila ia tidak dapat terus berjalan dan ia boleh ditamatkan dan dengan itu menghentikan pelaksanaan mana-mana aplikasi yang berjalan di atasnya.

Sesetengah Kesilapan boleh disebabkan oleh program-program yang tidak ditulis dengan jelas, contohnya kebocoran memori (pengekalan objek yang tidak diingini di luar jangkaan atau skop yang dimaksudkan) akan menyebabkan OutOfMemoryError. Kesilapan lain boleh dihadapi semasa permulaan persekitaran runtime.


Jawapan 3:

Dalam konteks Jawa, biasanya Pengecualian disebabkan oleh kesilapan logik dalam kod pengatur atau gagal menangani situasi tertentu secara proaktif. Kesilapan adalah hasil daripada persekitaran runtime yang tersandung pada keadaan apabila ia tidak dapat terus berjalan dan ia boleh ditamatkan dan dengan itu menghentikan pelaksanaan mana-mana aplikasi yang berjalan di atasnya.

Sesetengah Kesilapan boleh disebabkan oleh program-program yang tidak ditulis dengan jelas, contohnya kebocoran memori (pengekalan objek yang tidak diingini di luar jangkaan atau skop yang dimaksudkan) akan menyebabkan OutOfMemoryError. Kesilapan lain boleh dihadapi semasa permulaan persekitaran runtime.