Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java 9에서 변수 핸들이란 무엇입니까?


가변 핸들 변수 또는 변수 집합에 대한 참조입니다. , 정적 필드의 다른 구성요소 포함 , 비정적 필드 및 외부배열 요소 힙 데이터 구조에서 가변 핸들 기존 메서드 핸들과 유사합니다. . java.lang.invoke.VarHandle 을 사용하여 나타낼 수 있습니다. 수업. java.lang.invoke.MethodHandles.Lookup을 사용할 수 있습니다. 변수 핸들 을 생성하는 정적 팩토리 메서드 사물. 배열의 단일 요소에 액세스하는 데 사용할 수도 있습니다. , 및 바이트[] 배열.

구문

public abstract class VarHandle extends Object

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

public class VarHandleTest {
   public static void main(String args[]) {
      VarHandle varHandle = MethodHandles.arrayElementVarHandle(int[].class);
      int[] array = new int[5];

      printArray(array);
      varHandle.set(array, 2, 5);
      printArray(array);

      System.out.println(varHandle.get(array, 2));
   }
   private static void printArray(int[] array) {
      System.out.println(Arrays.toString(array));
   }
}

출력

[0, 0, 0, 0, 0]
[0, 0, 5, 0, 0]
5