1

JDK 7 のプレリリース バージョンには、ソース コードから invokedynamic 命令を作成できるクラス java.dyn.InvokeDynamic が含まれていました。

ここを参照してください: http://fwierzbicki.blogspot.com/2009/08/invokedynamic-and-jython-part-i.html

公式の JDK 7 リリースでは、このクラスはなくなったようです。このソース コード オプションがまだサポートされているかどうかは誰にもわかりませんか?

4

1 に答える 1

7

java.dyn パッケージの名前が java.lang.invoke に変更されました。

Java から「invokedynamic」命令を作成できるとは思いませんが、命令は他の動的言語用にあります。

Java では、「java.lang.invoke.MethodHandle」をリフレクションのより高速な代替手段として使用できます。例は MethodHandle クラスの javadoc にあります。メソッドの動的リンクは、invokedynamic 命令自体が MethodHandle に依存していることに注意してください。(詳細については、Oracle の記事New JDK 7 Feature: Support for Dynamically Typed Languages in the Java Virtual Machine を参照してください)

于 2011-08-12T04:35:26.937 に答える