Rumah  >  Artikel  >  Java  >  Bilakah Perlu Memanggil `System.exit` di Java?

Bilakah Perlu Memanggil `System.exit` di Java?

Linda Hamilton
Linda Hamiltonasal
2024-11-16 07:01:02825semak imbas

When is it Necessary to Call `System.exit` in Java?

Bilakah Perlu Memanggil System.exit dalam Java?

Dalam coretan kod yang disediakan:

public class TestExit {
    public static void main(String[] args) {
        System.out.println("hello world");

        System.exit(0); // is it necessary? And when it must be called?
    }
}

kaedah System.exit digunakan untuk menamatkan Java secara eksplisit program.

Tujuan System.exit

Tujuan utama System.exit ialah untuk mencetuskan penutupan terkawal Java Virtual Machine (JVM). Calling System.exit melakukan perkara berikut:

  • Menamatkan semua utas bukan daemon.
  • Mecetuskan pelaksanaan cangkuk penutupan berdaftar.
  • Mengeluarkan sumber yang dipegang oleh JVM , seperti pemegang fail dan rangkaian sambungan.

Bila Perlu Memanggil System.exit

Secara amnya, tidak perlu memanggil System.exit dalam program Java. JVM akan ditamatkan secara automatik apabila kaedah utama kembali atau apabila semua utas bukan daemon telah selesai dilaksanakan.

Walau bagaimanapun, terdapat senario tertentu yang memanggil System.exit berguna atau bahkan perlu:

  • Mendorong penutupan serta-merta: Apabila anda ingin menamatkan program secara tiba-tiba, tanpa mengira status utas bukan daemon.
  • Menggunakan cangkuk tutup: Apabila anda perlu mendaftar cangkuk penutupan untuk melaksanakan tugas pembersihan tertentu sebelum program keluar. Cangkuk ini dicetuskan oleh System.exit.

Maksud "Kaedah ini tidak pernah kembali seperti biasa."

Dokumentasi menyatakan bahawa System.exit "Kaedah ini tidak pernah kembali seperti biasa." Ini bermakna sebaik sahaja kaedah dipanggil, utas yang memanggilnya tidak boleh meneruskan pelaksanaannya dan sentiasa keluar dari JVM.

Atas ialah kandungan terperinci Bilakah Perlu Memanggil `System.exit` di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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