异常的简单规则

2014-11-24 09:01:31 · 作者: · 浏览: 0

天突然对异常有了兴趣,运行了一个很简单的程序,发现了一个我一直以来忽略的问题,虽然它针对于这题没什么意义,不过很关键,如果在用jdbc,io等这些东西的时候没搞清楚这些,后果很可怕。

下面来针对程序说说我为什么错的概念,不为别的,就为了给自己提个醒。


package com.zhao.practice801;

02 /**

03 * 异常的基本研究

04 * @author Administrator

05 *

06 */

07 public class TestException {

08 public static void main(String[] args) {

09 String str = null;

10 //取得字符串长度

11 int length = 0;

12 try{

13 length = str.length();

14 System.out.println();

15 }catch(Exception e){

16 e.printStackTrace();

17 }

18 System.out.println("程序退出");

19 }

20 }


一直以为出现异常就不会再执行后面的语句,发现错了,它只是一个方法体,并不会把方法体之外的代码给覆盖掉。这是程序的结果。

程序退出

2 java.lang.NullPointerException

3 at com.zhao.practice801.TestException.main(TestException.java:13)