Java 9の変数ハンドルとは何ですか?

PHPz
リリース: 2023-09-02 23:05:02
転載
894 人が閲覧しました

Java 9中的Variable Handle是什么?

変数ハンドル は、静的フィールド、非静的フィールド、および静的フィールドを含む変数または 変数セットへの参照です。ヒープ データ構造 外部 配列要素 内の。これは、変数ハンドルが既存のメソッドハンドルと類似していることを意味します。 java.lang.invoke.VarHandle クラスを使用してそれを表すことができます。 java.lang.invoke.MethodHandles.Lookup静的ファクトリ メソッドを使用して、変数ハンドル オブジェクトを作成できます。また、 配列 byte[] 配列内の個々の要素にアクセスするために使用することもできます。

文法

<strong>public abstract class VarHandle extends Object</strong>
ログイン後にコピー

Example

の中国語訳は次のとおりです:

Example

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の変数ハンドルとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート