</pre>第一个例子<pre name="code" class="java">public class tryCatchTest {
public static void main(String[] args) {
tryCatchTest t = new tryCatchTest();
int result = t.test();
System.out.println("Main运行完毕,返回结果为"+result);
}
public int test()
{
int a=12,b=0,result=0;
try
{
result = a/b;
System.out.println("try运行完毕");
return 1;
}
catch(Exception e)
{
e.printStackTrace();
System.out.println("catch运行完毕");
return 2;
}
finally
{
System.out.println("finally运行完毕");
return 3;
}
}
}
打印结果为
没有打印“try运行完毕”,说明程序运行到result = a/b;这一行之后直接运行了catch块中的代码。然后再运行finally中的代码,再是Main方法中的代码。
其中catch块和finally块中的代码是全部运行了的,最后的返回值为3。