Rumah > Java > javaTutorial > teks badan

API StackWalker dalam Java 9?

PHPz
Lepaskan: 2023-09-11 13:21:08
ke hadapan
849 orang telah melayarinya

Java 9中的StackWalker API?

StackWalker API membenarkan penapisan mudah dan akses tertunda untuk melaksanakan tugas dalam sebarang kaedah. Ia adalah API yang cekap dalam Java 9 untuk mendapatkan maklumat surih tindanan.

Tiga kelas baharu yang penting telah ditambahkan pada API StackWalker: StackWalker, StackWalker.StackFrame dan StackWalker.Option.

StackWalker Ia adalah kelas utama dalam >StackWalker API. Kami menggunakan kaedah StackWalker.forEach() untuk melintasi bingkai tindanan dan mendapatkan kelas pemanggil dengan cekap dengan memanggil kaedah StackWalker.getCallerClass(). Kami menggunakan kaedah StackWalker.walk() untuk menjalankan jejak tindanan dan menggunakan fungsi pada strim bingkai tindanan.

StackWalker.StackFrame Ia ialah kelas bersarang statik StackWalker, yang mewakili pengembalian panggilan kaedah StackWalker. Ia mempunyai kaedah untuk mengakses maklumat bingkai tindanan yang diberikan, seperti getDeclaringClass(), getLineNumber(), dsb. .

Contoh

import java.util.List;
import java.util.stream.Collectors;
public class StackWalkingTest {
   public static void main(String args[]) {
      final <strong>List<StackWalker.StackFrame></strong> stack = StackWalker.<strong>getInstance()</strong>
      .<strong>walk</strong>(s -> s.<strong>collect</strong>(Collectors.toList()));
      for(<strong>StackWalker.StackFrame</strong> sf : stack) {
         System.out.println(sf.<strong>getClassName()</strong> + "::" + sf.<strong>getMethodName()</strong> + ":" + sf.<strong>getLineNumber()</strong>);
      }
   }
}
Salin selepas log masuk
< /strong>Output
<strong>StackWalkingTest::main:6</strong>
Salin selepas log masuk

Atas ialah kandungan terperinci API StackWalker dalam Java 9?. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!