Rumah > Java > javaTutorial > teks badan

Mekanisme tindanan masa jalan dalam Java

WBOY
Lepaskan: 2023-08-31 21:37:06
ke hadapan
765 orang telah melayarinya

Mekanisme tindanan masa jalan dalam Java

Setiap kali anda perlu menjalankan proses, kod atau utas dalam Java, tindanan masa jalan dicipta untuk menyimpan operasi yang dilakukan apabila utas dilaksanakan.

Setiap entri dalam tindanan masa jalan dipanggil bingkai tindanan atau rekod pengaktifan. Sebaik sahaja proses memanggil fungsi, data yang dikaitkan dengannya dialih keluar daripada timbunan masa jalan.

Apabila semua fungsi telah dipanggil, timbunan masa jalan akan kosong. Ini bermakna ia perlu dikeluarkan dari ingatan.

Pada ketika ini, timbunan masa jalan dimusnahkan dan kemudian benang ditamatkan.

Penamatan benang boleh berlaku apabila benang selesai (sukarela) atau terpaksa (penamatan tidak normal).

Tertib pemusnahan unsur dalam timbunan masa jalan adalah bertentangan dengan tertib penciptaan entri tugasan masa jalan.

Apabila benang berjalan seperti biasa dan menyelesaikan pelaksanaan, fungsi utama dipanggil dan kemasukannya disimpan dalam timbunan masa jalan. Begitu juga, fungsi lain (jika ada) dipanggil dan entrinya disimpan. Apabila pelaksanaan fungsi selesai, pada masa itulah entri dialih keluar daripada timbunan masa jalan. Fungsi terakhir yang dilaksanakan ialah fungsi entri pertama yang dipadam.

Apabila benang ditamatkan secara tidak normal, ini bermakna semua baris kod tidak dapat dilaksanakan dengan jayanya. Ini bermakna pengecualian dilemparkan apabila ralat ditemui. Berikut ialah contoh:

Contoh

Demo dalam talian

public class Demo{
   public static void main(String[] args){
      test();
   }
   public static void test(){
      test_2();
      System.out.println("This is a test method.");
   }
   public static void test_2(){
      System.out.println(45/0);
      System.out.println("This is a method that divides 10 by 0.");
   }
}
Salin selepas log masuk

Output

Exception in thread "main" java.lang.ArithmeticException: / by zero
at Demo.test_2(Demo.java:14)
at Demo.test(Demo.java:9)
at Demo.main(Demo.java:5)
Salin selepas log masuk

Kelas bernama Demo mengandungi fungsi utama, di mana fungsi 'ujian' dipanggil. Fungsi 'test' ditakrifkan dan fungsi 'test_2' dipanggil di dalamnya. Fungsi yang dipanggil 'test_2' ditakrifkan di mana percubaan dibuat untuk membahagikan nombor dengan 0. Ini menyebabkan pengecualian dicetak pada konsol. Oleh itu, kawalan tidak mencapai baris 'println' untuk mencetak mesej ralat.

Atas ialah kandungan terperinci Mekanisme tindanan masa jalan dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan