Try中如果發現錯誤,即跳出try去匹配catch,那么try后面的語句就不會被執行


例:public void print() throws Exception.

 

對於方法a,如果它定義了throws Exception。那么當它調用的方法b返回異常對象時,方法a並不處理,而將這個異常對象向上一級返回,如果所有的方法均不進行處理,返回到主方法,程序中止。(要避免所有的方法都返回的使用方法,因為這樣出現一個很小的異常就會令程序中止)。

 

如果在方法的程序中有一行throw new Exception(),返回錯誤,那么其后的程序不執行。因為錯誤返回后,后面的程序肯定沒有機會執行,那么JAVA認為以后的程序沒有存在的必要。

 

對於try……catch格式:

try  {可能出現錯誤的代碼塊}  catch(exception e){進行處理的代碼} ;

                               對象變量的聲明

 

用這種方法,如果代碼正確,那么程序不經過catch語句直接向下運行;

如果代碼不正確,則將返回的異常對象和e進行匹配,如果匹配成功,則處理其后面的異常處理代碼。(如果用exception來聲明e的話,因為exception為所有exception對象的父類,所有肯定匹配成功)。處理完代碼后這個例外就完全處理完畢,程序會接着從出現異常的地方向下執行(是從出現異常的地方還是在catch后面呢?利用程序進行驗證)。最后程序正常退出。

 

Try中如果發現錯誤,即跳出try去匹配catch,那么try后面的語句就不會被執行。

 

 1 package TomText;
 2 //定義一個求圓面積的類。
 3 public class TomText_48 {
 4     private double radius;
 5     final double pi=3.14;
 6     public  double setradius(double r){
 7         return radius=r;
 8     }
 9     
10     public void getRadius() {
11         this.setradius(radius);
12     }
13     public double calculateArea( ) {
14         return pi*radius*radius;
15     }
16     public void res(){
17         System.out.println(this.calculateArea());
18     }
19     public static void main(String[] args){
20         TomText_48 t=new TomText_48();
21         t.setradius(44);
22         double s=t.calculateArea();
23         t.res();
24         System.out.println(s);
25     }
26 
27 }

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM