在Java中,您可以扔什么?
- 论坛
- 在Java中,您可以扔什么?
12 浏览
在Java中,您可以扔什么?
传统观点认为,在Java中,你只能抛出扩展自Throwable
的对象,但是否有可能禁用字节码验证器,并使Java编译并运行能够抛出任意对象甚至原始类型的代码呢?
我查阅了JVM的athrow
指令,它将从操作数栈中弹出第一个objref;但它是否会在运行时检查该引用是否指向一个Throwable
呢?
传统观点认为,在Java中,你只能抛出扩展自Throwable
的对象,但是否有可能禁用字节码验证器,并使Java编译并运行能够抛出任意对象甚至原始类型的代码呢?
我查阅了JVM的athrow
指令,它将从操作数栈中弹出第一个objref;但它是否会在运行时检查该引用是否指向一个Throwable
呢?