Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas Exception adalah kelas dasar tempat pengecualian diwariskan. Misalnya, InvalidCastException hierarki kelas adalah sebagai berikut:
Object
Exception
SystemException
InvalidCastException
Kelas Exception ini memiliki properti berikut yang membantu mempermudah pemahaman pengecualian.
| Nama Properti | Deskripsi |
|---|---|
| Data | Suatu IDictionary yang menyimpan data arbitrer dalam pasangan kunci-nilai. |
| HelpLink | Dapat menyimpan URL (atau URN) ke file bantuan yang menyediakan informasi ekstensif tentang penyebab pengecualian. |
| InnerException | Properti ini dapat digunakan untuk membuat dan mempertahankan serangkaian pengecualian dalam proses penanganan pengecualian. Anda dapat menggunakannya untuk membuat pengecualian baru yang mencakup pengecualian yang ditangkap sebelumnya. Pengecualian asli dapat diambil oleh pengecualian kedua dalam InnerException properti, memungkinkan kode yang menangani pengecualian kedua untuk memeriksa informasi tambahan. Misalnya, Anda memiliki metode yang menerima argumen yang diformat dengan tidak benar. Kode mencoba membaca argumen, tetapi pengecualian dilemparkan. Metode ini menangkap pengecualian dan melempar FormatException. Untuk meningkatkan kemampuan pemanggil untuk menentukan alasan pengecualian dilemparkan, kadang-kadang diinginkan bagi metode untuk menangkap pengecualian yang dilemparkan oleh fungsi pembantu dan kemudian melemparkan pengecualian yang lebih menunjukkan kesalahan yang telah terjadi. Pengecualian baru dan yang lebih bermakna dapat dibuat, di mana referensi pengecualian dalam dapat diatur ke pengecualian asli. Pengecualian yang lebih bermakna ini kemudian dapat dikirimkan ke pemanggil. Perhatikan bahwa dengan fungsionalitas ini, Anda dapat membuat serangkaian pengecualian tertaut yang berakhir dengan pengecualian yang dilemparkan terlebih dahulu. |
| Message | Menyediakan detail tentang penyebab pengecualian. |
| Source | Mendapatkan atau mengatur nama aplikasi atau objek yang menyebabkan kesalahan. |
| StackTrace | Berisi pelacakan tumpukan yang dapat digunakan untuk menentukan di mana kesalahan terjadi. Jejak tumpukan ini menyertakan nama file sumber dan nomor baris program jika informasi debug tersedia. |
Sebagian besar kelas yang mewarisi dari Exception tidak menerapkan anggota tambahan atau menyediakan fungsionalitas tambahan; mereka hanya mewarisi dari Exception. Oleh karena itu, informasi terpenting untuk pengecualian dapat ditemukan dalam hierarki kelas pengecualian, nama pengecualian, dan informasi yang terkandung dalam pengecualian.
Sebaiknya Anda hanya melempar dan menangkap objek yang berasal dari Exception, tetapi Anda dapat melemparkan objek apa pun yang berasal dari Object kelas sebagai pengecualian. Perhatikan bahwa tidak semua bahasa mendukung pelemparan dan penangkapan objek yang tidak berasal dari Exception.