Rumah > Java > javaTutorial > teks badan

Bagaimanakah kita membuat contoh VarHandle dalam Java 9?

王林
Lepaskan: 2023-09-17 21:53:08
ke hadapan
1213 orang telah melayarinya

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

Secara amnya, pemegang pembolehubah hanyalah rujukan bertaip kepada pembolehubah. Ia akan menjadi elemen array, instance atau statikmedan kelas. Kelas VarHandle boleh menyediakan akses tulis dan baca kepada pembolehubah di bawah keadaan tertentu. Mereka tidak berubah dan tidak mempunyai keadaan yang boleh dilihat. Selain itu, ia tidak boleh dibahagikan, setiap VarHandle mempunyai jenis generik T, iaitu jenis setiap pembolehubah yang diwakili oleh VarHandle ini. Matlamat VarHandle adalah untuk mentakrifkan standard untuk memanggil yang setara dengan operasi java.util.concurrent.atomic dan sun.misc.Unsafe pada medan dan elemen tatasusunan.

Dalam contoh di bawah, kita boleh mencipta contoh VarHandle menggunakan kaedah MethodHandle.lookup().

Contoh

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"} ;
   }
}
Salin selepas log masuk

Output

<strong>VarHandle instance created successfully!!!</strong>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah kita membuat contoh VarHandle 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