Java异常----总结

来源:互联网 发布:泛雅网络教学平台答案 编辑:程序博客网 时间:2024/06/04 19:32
编译器不会注意RuntimeException类型的异常

编译器所关心的是受查异常
异常是Exception类型或其子类的对象
重写父类方法时,抛出异常类型不能更宽泛
使用异常会占用资源,影响程序执行效率
在处理异常的时候,尽量减少try语句块的体积
============================================================================
有try catch finally的程序代码执行顺序是这样的(经过试验):
先执行try 块,从上至下执行代码,直到遇到抛出异常的语句。
立即跳入catch块(try块抛出异常的语句后面的那部分直接被舍弃)
执行catch块内的代码
最后执行finally块的代码
===================================================================
try,catch,finally的四个使用规则:
1).try后面一定要跟catch或finally
2).如果try后面只有finally,那么这个方法一定要声明throws这个异常见解决方案②
3).有catch或finally,则前面一定要有try
4).try 和catch之间不能有其他代码
  1. 有三结合格式  
  2.       
  3.     try  
  4.     {  
  5.           
  6.     }  
  7.     catch ()  
  8.     {  
  9.     }  
  10.   
  11.     try  
  12.     {  
  13.           
  14.     }  
  15.     finally  
  16.     {  
  17.     }  
  18.   
  19.     try  
  20.     {  
  21.           
  22.     }  
  23.     catch ()  
  24.     {  
  25.     }  
  26.     finally  
  27.     {}  

finally块使程序的各部分功能划分更明确,并能避免紊乱
============================================================================
如果被调用的方法抛出了多种异常,那么调用的时候就要写多个catch块,注意要
从小到大catch,不然小的子类的异常的catch 块永远都没有机会被使用到
比如:
try{
//...
}catch(IOException){
//...
}catch(Exception){
//...
}

解决方案②:不处理(声明throws这个异常)
如果不catch异常就要把它throws掉:
JAVA 异常 exception - 小镜子~ - 菜园子
 
不过这不是长久之计,不能所有人都不处理异常。
如果最后main函数都不能处理这个异常,JAVA虚拟机只好死给你看:(虽然编译器不会报错)
JAVA 异常 exception - 小镜子~ - 菜园子
 
原创粉丝点击