哪为兄台能帮我解释一下

03-12-05 lhc_mail

package test;

import java.sql.*;

public class Test {

public Test() {

}

public static void main(String[] args) {

Untitled6 untitled61 = new Untitled6();

try{

untitled61.test1();

}catch(Exception e) {

System.out.println("In main()");

e.printStackTrace();

}

}

public void test1() throws Exception {

ResultSet rs = null;

Statement statement= null;

Connection connection = null;

try{

rs.close();

}catch (Exception e){

//e.printStackTrace();

System.out.println("In catch");

throw e;

}finally{

System.out.println("In finally");

throw new java.io.IOException("IOException");

}

}

}

上面是我做的一个测试,输出的结果为:

java.io.IOException: IOException

at test.Untitled6.test1(Untitled6.java:30)

at test.Untitled6.main(Untitled6.java:12)

In catch

In finally

In main()

我很纳闷,为什么结果不是:

In catch

In finally

In main()

java.io.IOException: IOException

at test.Untitled6.test1(Untitled6.java:30)

at test.Untitled6.main(Untitled6.java:12)

哪位大哥能给小弟解释一下??

lhc_mail
2003-12-05 17:22

更正一下,类名本来为:Untitled6

lhc_mail
2003-12-05 17:27

更正一下,类中出现的Test类原名为Untitled6。

hymmyh
2003-12-06 16:30

你吧 System.out -->System.err

就能的到你的结果。

hymmyh
2003-12-06 16:31

你吧 System.out -->System.err

就能的到你的结果。

2Go 1 2 下一页