首頁 > Java > java教程 > 主體

在Java 9中,我們什麼時候可以使用StackWalker.getCallerClass()方法?

王林
發布: 2023-09-08 08:45:12
轉載
786 人瀏覽過

在Java 9中,我们什么时候可以使用StackWalker.getCallerClass()方法?

Java 9 為延遲存取提供了一種有效的堆疊遍歷方式,使用 StackWalker API 過濾堆疊追蹤。 StackWalker 的物件可以讓我們遍歷以及對堆疊的存取。此類別包含一些有用的方法,例如 walk()forEach()getCallerClass()

getCallerClass() 方法傳回呼叫該方法的類別。為了掌握呼叫類別實例,我們在取得 StackWalker 實例時需要 RETAIN_CLASS_REFERENCE RETAIN_CLASS_REFERENCE 保留 StackWalker 遍歷的所有類別的實例。

語法

<strong>public Class<?><!--?--> getCallerClass()</strong>
登入後複製

範例

import java.lang.StackWalker.Option;

public class StackWalkerTest {
   public static void main(String args[]) {
      StackWalkerTest1.test1();
   }
}

class StackWalkerTest1 {
   protected static void test1() {
      StackWalkerTest2.test2();
   }
}

class StackWalkerTest2 {
   protected static void test2() {
      System.out.println(<strong>StackWalker.getInstance</strong>(<strong>Option.RETAIN_CLASS_REFERENCE</strong>).<strong>getCallerClass()</strong>);
   }
}
登入後複製

輸出

<strong>class StackWalkerTest1</strong>
登入後複製

以上是在Java 9中,我們什麼時候可以使用StackWalker.getCallerClass()方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!