首頁 > Java > java教程 > 主體

在Java 9中,我們如何建立VarHandle的實例?

王林
發布: 2023-09-17 21:53:08
轉載
1214 人瀏覽過

在Java 9中,我们如何创建VarHandle的实例?

一般來說,變數句柄只是變數的類型化參考。它將是類別的一個陣列元素、一個實例靜態欄位VarHandle類別可以提供特定條件下對變數的寫入和讀取存取。它們是不可變的並且沒有可見的條件。另外,它們不能再細分,每個VarHandle都有一個泛型類型#T,它是代表的每個變數的型別通過這個VarHandleVarHandle的目標是定義一個標準,用於呼叫欄位上java.util.concurrent.atomicsun.misc.Unsafe操作的等效項和數組元素。

在下面的範例中,我們可以使用 MethodHandle.lookup() 方法建立一個 VarHandle 實例。

範例

import java.lang.invoke.VarHandle;
import java.lang.invoke.MethodHandles;

public class VarHandleInstanceTest {
   public static void main(String args[]) {
      try {
         <strong>VarHandle </strong>fieldHandle = <strong>MethodHandles.lookup().in</strong>(Student.class).<strong>findVarHandle</strong>(Student.class, "<strong>studentId</strong>", int.class);
         System.out.println("VarHandle instance created successfully!!!");
      } catch (NoSuchFieldException | IllegalAccessException e) {
         e.printStackTrace();
      }
   }
}

<strong>// Stundent class</strong>
class Student {
   protected int studentId;
   private String[] marks;
   public Student() {
      studentId = 0 ;
      marks = new String[] {"75" , "85" , "95"} ;
   }
}
登入後複製

輸出

<strong>VarHandle instance created successfully!!!</strong>
登入後複製

以上是在Java 9中,我們如何建立VarHandle的實例?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板