public static int divide(int a, int b){int result = 0;try{//1System.out.println("1.11111");result = a / b;//2System.out.println("2.22222");return result;//}catch(Exception e){//3System.out.println("3.333333");}finally{//4System.out.println("4.444444");result = -1;}//5System.out.println("5.555555");return result;} public static void main(String[] args) {int r = divide(20,0); //int r = divide(20,1);System.out.println(r);}
如果没有异常,输出顺序是1-2-4(注意输出正确后,先将结果返回,再执行finally语句块,最后result的结果为-1,但返回值是计算除法的结果,同时不会输出第五步),返回值是除数的结果,如果输出异常,输出的的顺序是1-3-4-5,返回结果是-1;