单项选择题

有如下的代码段,当编译和运行时,下列各选项中说法正确的是( )。
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”