有如下的代码段,当编译和运行时,下列各选项中说法正确的是( )。 public class Z { public static void main(String args[]) { new Z(); } Z() { Z aliasl=this; Z alias2=this; synchronized(aliasl) { try{ alias2.walt(); System.out.println( DONE WAITING ); } catch(InterruptedException e) { System.out.println( INTERR UPTED ); } catch (Exception e) { System.out.println( OTHER EXCEPTION ); } finally{ System.out.println( FINALLY ); } } System.out.println( ALL DONE ); } }
A.应用程序编译正常,但是不打印任何数据
B.应用程序编译正常,并打印数据“DONE WAITING”
C.应用程序编译正常,并打印数据“FINALLY”
D.应用程序编译正常,并打印数据“ALL DONE”