Rumah >Java >javaTutorial >Masalah pulau di Jawa
Selepas sesuatu objek telah digunakan, ia dialokasikan daripada memori menggunakan kelas Pengumpul Sampah Objek dimusnahkan berdasarkan fakta bahawa tiada rujukan kepada objek itu ada yang memanggil fungsi 'finalize' pada objek yang perlu dimusnahkan.
Apakah pulau pengasingan?
Apabila dua objek 'a', dan 'b' merujuk antara satu sama lain, dan ia tidak dirujuk oleh mana-mana objek lain, ia dikenali sebagai pulau pengasingan.
Ia adalah sekumpulan objek yang merujuk antara satu sama lain tetapi mereka tidak dirujuk tetapi objek lain bagi aplikasi lain sama sekali.
Nota − Satu objek yang tidak dirujuk juga merupakan pulau pengasingan.
Biar kita lihat contoh −
Demo Langsung
public class Demo{ Demo i; public static void main(String[] args){ Demo my_ob_1 = new Demo(); System.out.println("Demo object one has been created"); Demo my_ob_2 = new Demo(); System.out.println("Demo object two has been created"); my_ob_1.i = my_ob_2; my_ob_2.i = my_ob_1; my_ob_1 = null; my_ob_2 = null; System.gc(); } @Override protected void finalize() throws Throwable{ System.out.println("The finalize method has been called on the object"); } }
Demo object one has been created Demo object two has been created The finalize method has been called on the object The finalize method has been called on the object
Kelas bernama Demo mengandungi fungsi utama. Di sini, pembolehubah jenis kelas Demo dicipta. Contoh kelas Demo dibuat dan objek kedua diberikan kepada objek Demo objek pertama. Perkara yang sama berlaku untuk objek kedua. Kini, kedua-dua objek diberikan null dan fungsi 'System.gc' dipanggil. Kini, fungsi 'muktamadkan' ditindih.
Atas ialah kandungan terperinci Masalah pulau di Jawa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!