Variable Handle 是一个变量或者一组变量的引用,包括静态字段、非静态字段和堆数据结构中的外部数组元素。这意味着Variable Handle与现有的Method Handle类似。可以使用java.lang.invoke.VarHandle 类来表示它。我们可以使用java.lang.invoke.MethodHandles.Lookup静态工厂方法来创建Variable Handle 对象。它还可以用于访问数组中的单个元素,以及 byte[] 数组。
<strong>public abstract class VarHandle extends Object</strong>
import java.lang.invoke.MethodHandles; import java.lang.invoke.VarHandle; import java.util.Arrays; public class VarHandleTest { public static void main(String args[]) { <strong>VarHandle </strong>varHandle = <strong>MethodHandles.arrayElementVarHandl</strong>e(<strong>int[].class</strong>); int[] array = new int[5]; printArray(array); varHandle.<strong>set</strong>(array, 2, 5); printArray(array); System.out.println(varHandle.<strong>get</strong>(array, 2)); } private static void printArray(int[] array) { System.out.println(Arrays.toString(array)); } }
<strong>[0, 0, 0, 0, 0] [0, 0, 5, 0, 0] 5</strong>
以上是Java 9中的Variable Handle是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!