似乎JSR 292将为 JVM 添加对动态语言的支持,但我还没有看到很多关于它的细节。动态类型是否会被合并到语言中(或者只是虚拟机)?如果是这样,语义会是什么样子?
会不会有类似 C# 4 的东西:
dynamic x = 10, y = 5;
Console.WriteLine(x + y);
JDK 7的新特性:Java 虚拟机文章中的动态类型语言支持是一篇非常好的文章,它回答了您的大部分问题。请特别注意JSR 292 — 动态语言支持的下一步(是的,它是 JSR 292,而不是 291)部分。
JSR 292 为 JVM 引入了新的 Java 字节码指令
invokedynamic
,以及新的方法链接机制。
您可能是指 JSR 292,请参阅:http ://blog.headius.com/2008/09/first-taste-of-invokedynamic.html