Rumah > Java > javaTutorial > Bagaimanakah Kolam Rentetan Java Mengendalikan Rentetan yang Dicipta dengan Kata Kunci `baru`?

Bagaimanakah Kolam Rentetan Java Mengendalikan Rentetan yang Dicipta dengan Kata Kunci `baru`?

Patricia Arquette
Lepaskan: 2024-12-16 14:00:23
asal
363 orang telah melayarinya

How Does Java's String Pool Handle Strings Created with the `new` Keyword?

Penerokaan Kolam Rentetan Java

Pertimbangkan kod berikut:

String first = "abc";
String second = new String("abc");
Salin selepas log masuk

Soalan 1: Kolam Rentetan Penggunaan dengan Kata Kunci Baharu

Apabila Java memulakan kedua dengan pembina String() baharu, adakah ia mencipta contoh String abc yang baharu sepenuhnya?

Jawapan: Ya, menggunakan baharu memastikan penciptaan objek String baharu.

Soalan 2: Heap and String Pool Storage

Adakah tika String yang baru dibuat (daripada kata kunci baharu) disimpan dalam timbunan biasa atau kolam String?

Jawapan: Semua objek, termasuk objek String, berada pada timbunan. Kolam String bukanlah kawasan ingatan yang berasingan; ia adalah mekanisme seperti cache.

Soalan 3: Kiraan Kolam Rentetan

Berapa banyak kejadian Rentetan "abc" akan berakhir dalam kolam Rentetan?

Jawapan: Secara amnya, apabila anda mencipta literal String yang tidak boleh diubah, Java secara automatik meletakkannya dalam kolam String. Walau bagaimanapun, dalam senario khusus ini:

  • pertama akan diberikan rujukan kepada String abc daripada kumpulan String.
  • kedua, dibuat dengan String("abc") baharu, akan cipta objek String yang berasingan, yang tidak akan disimpan dalam kolam String.

Oleh itu, dalam kes ini, hanya satu contoh Rentetan "abc" akan wujud dalam kolam Rentetan.

Atas ialah kandungan terperinci Bagaimanakah Kolam Rentetan Java Mengendalikan Rentetan yang Dicipta dengan Kata Kunci `baru`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan