1finally与return、exit()

public class TestException {
    public static void main(String[] args) {
        String[] str = {"1","2","3"};
        try {
          for(int i=0;i<5;i++) {
            System.out.print(str[i]);
          }
        }catch(ArrayIndexOutOfBoundsException e){
          System.out.println('\n' + "数组下标越界");
//          return;//如果return,下面的finally还会执行
          System.exit(0);//如果是exit()方法,那么下面的finally就不会被执行了,exit()终止虚拟机的运行。-1表示非正常退出,0表示正常退出
        }finally{
          System.out.println("我是finally");
        }
        System.out.println("程序结束");
    }
}

 

posted @ 2017-06-28 23:45  zhuangrunwei  阅读(108)  评论(0编辑  收藏  举报