JVM规范学习:签名多态性
2014-08-09 16:40
381 查看
本文翻译自:http://docs.oracle.com/javase/specs/jvms/se7/html/jvms-2.html#jvms-2.9
一个方法是签名多态性方法,当且仅当满足以下条件:
在java.lang.invoke.MethodHandle class中声明。
具有唯一的形参:Object[]。
返回值类型为Object。
设置了
和
在Java SE7中,唯一的签名多态性方法是MethodHandle 中的invoke and invokeExact。
在JVM中的为了对一个method handle的调用施加影响,invokevirtual指令对签名多态性方法进行了特殊的处理。一个method handle是一个类型化的,可以直接执行的引用,这个引用指向一些底层方法,或者构造函数,或者字段或类似的底层操作,并且带有可选的返回值和参数的转换。这些转换非常一般,如:conversion,
insertion, deletion, and substitution。
一个方法是签名多态性方法,当且仅当满足以下条件:
在java.lang.invoke.MethodHandle class中声明。
具有唯一的形参:Object[]。
返回值类型为Object。
设置了
ACC_VARARGS
和
ACC_NATIVE
标记。
在Java SE7中,唯一的签名多态性方法是MethodHandle 中的invoke and invokeExact。
在JVM中的为了对一个method handle的调用施加影响,invokevirtual指令对签名多态性方法进行了特殊的处理。一个method handle是一个类型化的,可以直接执行的引用,这个引用指向一些底层方法,或者构造函数,或者字段或类似的底层操作,并且带有可选的返回值和参数的转换。这些转换非常一般,如:conversion,
insertion, deletion, and substitution。
相关文章推荐
- java之jvm学习笔记七(jar包的代码认证和签名)
- java之jvm学习笔记八(实践对jar包的代码签名)
- C#语言规范学习之签名和重载
- java之jvm学习笔记七(jar包的代码认证和签名)
- JVM规范学习:invokedynamic
- JVM规范学习:invokeinterface
- JVM学习笔记二:内存结构规范
- java之jvm学习笔记八(实践对jar包的代码签名)
- JVM规范学习:invokespecial
- java之jvm学习笔记八(实践对jar包的代码签名)
- JVM规范学习:invokestatic
- java jvm学习笔记八(实现jar包的代码签名)
- Java存储结构-JVM规范学习笔记
- JVM规范学习:invokevirtual
- java之jvm学习笔记七(jar包的代码认证和签名)
- XML规范和学习资源小结
- boost 学习笔记:regex语法规范(翻译)ZT
- boost 学习笔记:regex语法规范(翻译)
- XML规范和学习资源小结
- WEB标准学习路程之"入门篇":8.XHTML代码规范