Strange exception table entry produced by Sun's javac
问题 Given this program: class Test { public static void main(String[] args) { try { throw new NullPointerException(); } catch (NullPointerException npe) { System.out.println("In catch"); } finally { System.out.println("In finally"); } } } Sun's javac (v 1.6.0_24) produces the following bytecode: public static void main(java.lang.String[]); // Instantiate / throw NPE 0: new #2; // class NullPointerException 3: dup 4: invokespecial #3; // Method NullPointerException."<init>":()V 7: athrow // Start