Menjelaskan Penciptaan Rentetan Java: Meninjau Semula "String s = new String("bodoh")"
Di Java, penciptaan objek String merupakan topik yang sering menimbulkan persoalan. Satu soalan sedemikian berkaitan dengan perbezaan penggunaan antara String dan kelas lain apabila menetapkan literal.
Mengapakah "CaseInsensitiveString cis = new CaseInsensitiveString("Polish")" Betul?
Pernyataan "CaseInsensitiveString cis = new CaseInsensitiveString("Polish")" sememangnya betul kerana String ialah kelas unik di Jawa. Tingkah laku ini tidak berkenaan dengan kelas lain, seperti CaseInsensitiveString.
Memahami Gelagat Istimewa String:
Tidak seperti kelas lain, String mempunyai ciri-ciri tertentu yang wujud yang membenarkan gelagat unik ini :
Cara Membuat CaseInsensitiveString Berperilaku Seperti String:
Untuk menjadikan CaseInsensitiveString berkelakuan seperti String dalam ini mengambil kira, anda perlu mengatasi pembinanya dan melatih secara manual String yang diluluskan ke dalam kolam rentetan. Ini memerlukan akses kepada kumpulan rentetan dalaman JVM dan boleh mengakibatkan isu prestasi jika tidak dilakukan dengan berhati-hati.
Kesimpulan:
Ringkasnya, String ialah kelas unik dalam Java yang membenarkan pemulaan yang dipermudahkan dengan literal. Kelas lain, seperti CaseInsensitiveString, tidak mempunyai gelagat ini dan memerlukan pembinaan eksplisit menggunakan pembina yang betul.
Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menggunakan `New CaseInsensitiveString('Poland')` Seperti yang Saya Lakukan Dengan `New String('bodoh')`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!