InvokeDynamic из исходного кода в JDK7
Предварительные версии JDK 7 содержали класс java.dyn.InvokeDynamic, который позволял создавать инструкции invokedynamic из исходного кода.
Смотрите здесь: http://fwierzbicki.blogspot.com/2009/08/invokedynamic-and-jython-part-i.html
В официальном релизе JDK 7 этот класс, похоже, исчез. Кто-нибудь знает, поддерживается ли эта опция исходного кода?
1 ответ
Пакет java.dyn был переименован в java.lang.invoke.
Хотя я не думаю, что вы можете создать инструкцию invokedynamic из Java, эта инструкция есть и для других динамических языков.
В Java вы можете использовать java.lang.invoke.MethodHandle в качестве более быстрой альтернативы отражению, примеры доступны в javadoc класса MethodHandle. Обратите внимание, что сама вызыванная динамическая инструкция полагается на MethodHandle для динамического связывания методов. (Более подробную информацию вы можете прочитать в статье Oracle Новая функция JDK 7: поддержка динамически типизированных языков в виртуальной машине Java)