我有这个代码 -
try {
doSomething();
} catch (Exception e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
这将如何实际由编译器实现.实际放入汇编代码生成的异常检查在哪里?
更新
我知道上面的代码如何转换为字节码.字节码仅将try-catch转换为相应的try-handler块.我感兴趣的是它将如何转换为汇编/并由jvm处理.
Java 7编译器如何处理多捕获块?一个简单的实现是生成字节码,就好像存在多个catch块一样.但是,我从多个来源收集到的情况并非如此 - 处理多个异常类型的catch块在编译期间不会产生重复的字节码.
那么它是怎样工作的 ?是否有新的字节码指令告诉JVM多捕获块?