java-sec4

Java异常处理机制

Throwable类-父类  Error类,Exception类 -子类

运行异常-Error和RuntimeException以及其子类  编译器不做语法检查

检查异常-除了上述的类 编译器不让语句通过

public void testException() throws IOException
{
     //FileInputStream的构造函数会抛出FileNotFoundException
     FileInputStream fileIn = new FileInputStream( "E:\\a.txt" );
 
     int word;
     //read方法会抛出IOException
     while ((word =  fileIn.read())!=- 1 )
     {
         System.out.print(( char )word);
     }
     //close方法会抛出IOException
     fileIn.clos

}// 来源 http://www.importnew.com/26613.html 

异常处理方法

try...catch...finally

例:try {} catch (FileNotFoundException e) {} catch (IOException e) {} catch(Throwable e){ e.printStackTrace();}  

先执行try里面的语句,发生异常后catch接收,catch块的捕捉与参数相同的异常信息,从上至下寻找,只执行第一个匹配的块

子类放前,父类放后(父类可以匹配子类的信息)

无论异常是否发生,finally的语句都要执行

throw 自己声明 public static void main(String[] args)throw Exception,AException,HullPointerException,

                                AException,IOException 

throws仅仅是将函数中可能出现的异常向调用者声明,而自己则不具体处理。

throw new AException/IOException() 手动抛出异常

*   class A{void a(){try {}catch(java.io.IOException e){} } }

*   class A

{void a()throws A Exception

{try{} 

catch (BException e){throw new AException(e);} 

}

* class A

{void a()throws AException

{try

{try{} 

catch (BException e){throw new AException(e);}

catch(AException e){} }

*   覆盖函数不允许抛出被覆盖函数没有声明的检查异常




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值