本文目錄一覽:
- 1、水能詳細講解一下java 中的異常處理 try catch throw
- 2、java里try是幹什麼的?
- 3、Java異常處理try-catch-finally的執行過程?
- 4、Java中異常處理語句有哪些?
- 5、java中try和catch的具體作用
水能詳細講解一下java 中的異常處理 try catch throw
沒怎麼用過throw。用過try和catch。
1.throw,等你程序比如檢測到一個非法的值,則可以寫代碼,專門throw,拋出這個異常(後期會有人捕獲並處理的)
2.
catch,我是和try一起用的。
即:
try{
做你要做的事情,
尤其是可能會出錯的某些事情
比如通過網絡訪問某個地址
則可能出現超時等情況,此時最好就是把相關代碼放到此try中
}
catch()
{
然後在catch中捕獲,處理對應的異常
比如是超時的異常,就彈出個對話框,告訴用戶超時了,之類的
}
3.總之,把可能,容易出錯的代碼,放到try中,
然後在catch中寫相關的錯誤的處理的代碼。即可。
感興趣的話,用google搜:
crifanlib.cs
裡面有我寫的各種函數,其中有用到try和catch。
java里try是幹什麼的?
“try-catch-finally語句塊”用來捕獲並處理異常。
你可能會想,如果你寫程序的時候有意的去避免異常,那麼“try-catch-finally語句塊”不就沒什麼用了嗎?可是,你的程序不是給你自己使用的吧?如果你要求用戶輸入1個數字,而且你的程序也明確提示了用戶需要輸入的是數字,但用戶就是輸入了“英文字母”,那麼,你的程序沒有“try-catch-finally語句塊”一定會直接崩潰的。而如果用了“try-catch-finally語句塊”,並將這個異常處理為“再次提醒用戶需要輸入的是數字,並再次允許用戶重新輸入”,那你的程序就不會半途掛掉。
【示例】
//用”try-catch”強制用戶必須輸入一個數字!
import java.util.Scanner;
public class Test2 {
public static void main(String args[]) {
double d = 0;
boolean badInput = true;
Scanner input;
while(badInput) {
System.out.println(“請輸入1個數字:”);
input = new Scanner(System.in);
try {
d=input.nextDouble();
} catch(Exception e) {
System.out.println(“您輸入的不是數字!”);
continue;
}
badInput = false;
}
System.out.println(“您輸入的是:” + d);
}
}
Java異常處理try-catch-finally的執行過程?
import java.text.SimpleDateFormat;
import java.util.Date;
public class Test {
public static void main(String[] args) {
try {
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
System.out.println(sdf.format(new Date()));
} catch (Exception e) {
System.out.println(“Error!!”);
e.printStackTrace();
} finally {
System.out.println(“Date Transform End.”);
}
}
}
①首先執行try中的代碼。
②如果try中的代碼執行過程中發生異常,會立即轉入catch中,執行catch中的代碼。
③如果try中執行完畢,未發生異常,則不執行catch中的代碼。
④最後執行finally中的代碼。無論異常是否發後生。
Java中異常處理語句有哪些?
JAVA使用try-catch語句來處理異常。
將有可能出現的異常操作放在try-catch的try部分,一旦try部分拋出異常對象,或調用某個可能拋出異常對象的方法,並且該方法拋出了異常對象,那麼try立即結束執行,轉向catch部分。所以程序將發生異常後的處理放在catah部分。
java中try和catch的具體作用
try就像一個網,把try{}裡面的代碼所拋出的異常都網住,然後把異常交給catch{}裡面的代碼去處理,最後執行finally之中的代碼。
無論try中代碼有沒有異常,也無論catch是否將異常捕獲到,finally中的代碼都一定會被執行。
例如:當除數為0時,編譯不會報錯,如果沒有try/catch的話,程序直接崩潰。用try/catch的話,則可以讓程序運行下去,並且輸出為什麼出錯。
擴展資料
java中try….catch的使用原則
1、當代碼中可能會遇到的異常需要用try{ }catch{Exception e}來處理,否則導致程序崩潰。
2、不要在for循環裡面嵌套try catch子句。
3、儘可能的減少try catch子句的嵌套,會影響性能。
4、同一個try子句中多個catch時,異常處理原則。
當一個try塊中包含眾多語句,可能拋出多種不同的異常,只有通過多個catch塊來捕獲不同的異常。而如果兩個異常存在繼承關係,應該把子類異常放在父類異常的前面來捕獲,或者把最小範圍異常放在最前面 ,範圍大的放在後面。
因為是按照catch塊從上往下匹配,當它匹配某一個catch塊的時候,就直接進入到這個catch塊裡面去了,後面在再有catch塊的話,它不做任何處理,直接跳過去,全部忽略掉。
如果有finally的話進入到finally裡面繼續執行。Exception這個異常的根類一定要剛在最後一個catch裡面,如果放在前面或者中間,任何異常都會和Exception匹配的,就會報已捕獲到異常的錯誤。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/158107.html