Memahami Casting dalam Java
Bagi pengaturcara baru, casting boleh menjadi konsep yang mengelirukan. Walaupun ia difahami masa untuk memanfaatkan pemutus, mekanismenya masih sukar difahami. Artikel ini menyelidiki selok-belok pemutus di Jawa, terutamanya apabila berurusan dengan pemutus objek.
Pemutus dalam Java melibatkan memaklumkan pengkompil bahawa objek jenis A sebenarnya daripada jenis B yang lebih khusus, dengan itu memberikan akses kepada kaedah tambahan. Ia bukan penukaran ajaib, sebaliknya amanah yang diberikan kepada penyusun. Contohnya:
Object o = "str"; String str = (String)o;
Di sini, Objek o sememangnya rentetan, jadi menghantarnya ke rentetan adalah sah. Walau bagaimanapun, dua senario kritikal boleh membawa kepada ralat. Pertama, menghantar antara hierarki warisan yang tidak berkaitan mencetuskan ralat pengkompil:
String o = "str"; Integer str = (Integer)o; //Compilation fails
Kedua, menghantar dalam hierarki yang sama, tetapi dengan jenis sasaran yang tidak sah, menghasilkan ClassCastException pada masa jalan:
Number o = new Integer(5); Double n = (Double)o; //ClassCastException
Pengecualian ini menunjukkan pelanggaran amanah penyusun. Pengaturcara menegaskan bahawa objek itu daripada jenis tertentu, bertentangan dengan realiti.
Penghantaran terutamanya diperlukan apabila beralih daripada jenis umum kepada yang lebih khusus. Sebagai contoh, menghantar Integer kepada Nombor boleh diterima kerana semua Integer ialah Nombor. Generik, yang diperkenalkan dalam Java-5, telah mengurangkan keperluan untuk pemutus dengan menyediakan alternatif yang lebih selamat. Dengan penggunaan generik yang betul, ClassCastException boleh ditiadakan secara praktikal.
Atas ialah kandungan terperinci Bagaimana Casting Berfungsi di Java, dan Bilakah Ia Boleh Berlaku Salah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).