




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第一篇文章看懂Java異常處理目錄異常的定義異常的分類異常的處理方法try…catch處理throw和throws自定義異??偨Y
異常的定義
在java中,異常就是java在編譯、運行或運行過程中出現的錯誤
總共有三種:1.編譯錯誤2.運行錯誤3.邏輯錯誤
1.編譯錯誤是因為程序沒有遵循語法規(guī)則,編譯程序能夠自己發(fā)現并且提示我們錯誤的原因和位置,這個也是新手在剛接觸編程語言時經常遇到的問題。
2.運行時錯誤是因為程序在執(zhí)行時,運行環(huán)境發(fā)現了不能執(zhí)行的操作。
3.邏輯錯誤是因為程序沒有按照預期的邏輯順序執(zhí)行。異常也就是指程序運行時發(fā)生錯誤,而異常處理就是對這些錯誤進行處理和控制。
packageorg.oracle.test;
publicclassTryDemo9{
publicstaticvoidmain(String[]args){
System.out.println(1/0);//0不能做除數
System.out.println("你好");//程序捕獲異常,程序終止,不執(zhí)行
在代碼執(zhí)行過程中遇到異常就會終止
運行的結果里會告訴我們異常的類型,異常出現的位置
異常的分類
RuntimeException:運行時異常,一般不手動處理,出問題了再處理。
其他Exception:必須要經過手動處理。
Error:一般指的是系統(tǒng)級錯誤。
異常的處理方法
try…catch處理
packageorg.oracle.test;
importjava.util.Scanner;
publicclassTryDemo2{
publicstaticvoidmain(String[]args){
System.out.println(testOne());
*當try、catch、finally代碼塊中都有return語句,
*程序無論報錯與否都會執(zhí)行finally里面的renturn語句
publicstaticdoubletestOne(){
try{
Scannersc=newScanner(System.in);
System.out.println("請輸入第一個數字:");
inta=sc.nextInt();
System.out.println("請輸入第二個數字:");
intb=sc.nextInt();
intresult=a/b;
//System.out.println("result:"+result);
System.out.println("執(zhí)行了try塊");
returnresult;
}catch(Exceptione){
e.printStackTrace();
return0;
}finally{
return-1000;
運行結果:
try--用于監(jiān)聽。將要被監(jiān)聽的代碼(可能拋出異常的代碼)放在try語句塊之內,當try語句塊內發(fā)生異常時,異常就被拋出。
catch--用于捕獲異常。catch用來捕獲try語句塊中發(fā)生的異常。
finally--finally語句塊總是會被執(zhí)行。它主要用于回收在try塊里打開的物力資源(如數據庫連接、網絡連接和磁盤文件)。
throw和throws
throws表示方法準備要扔出來一個異常
throw表示向外拋出異常
packageorg.oracle.test;
importjava.util.InputMismatchException;
publicclassTryDemo8{
publicstaticvoidmain(String[]args){
try{
testThree();
}catch(Exceptione){
System.out.println(e.getMessage());
e.printStackTrace();
publicstaticvoidtestOne()throwsInputMismatchException{
thrownewInputMismatchException();
publicstaticvoidtestTwo()throwsException{
try{
testOne();
}catch(InputMismatchExceptione){
thrownewException("新異常1",e);
publicstaticvoidtestThree()throwsException{
try{
testTwo();
}catch(Exceptione){
Exceptione1=newException("新異常2");
e1.initCause(e);
throwe1;
運行結果:
自定義異常
自定義異常:直接繼承Exception或者RuntimeException來是實現自定義異常
packageorg.oracle.test;
importjava.util.Scanner;
publicclassTryDemo6{
publicstaticvoidmain(String[]args){
try{
hotelRule();
}catch(Exceptione){
e.printStackTrace();
*基帝開了個情侶酒店,基帝酒店規(guī)矩:18歲以下和80歲上以上客戶,需要家人陪同入住
publicstaticvoidhotelRule()throwsException{
Scannersc=newScanner(System.in);
System.out.prin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行政管理與社區(qū)治理的結合的試題及答案
- 行政法學的前沿研究與試題及答案總結
- 自考行政管理方法論探討試題及答案
- 蘇軾詩詞名篇誦讀
- 醫(yī)學與社會學交叉領域的試題及答案
- 2025年自考行政管理??频募记膳c試題答案
- 護士應知的臨床常識試題及答案
- 行政法學復習中的新思路:試題及答案
- 精準查漏補缺執(zhí)業(yè)護士考試試題及答案
- 2025年執(zhí)業(yè)藥師考試前沿知識試題及答案
- 創(chuàng)業(yè)管理-易學實+用的創(chuàng)業(yè)真知智慧樹知到期末考試答案章節(jié)答案2024年天津工業(yè)大學
- 法醫(yī)鷹一樣的眼睛智慧樹知到期末考試答案章節(jié)答案2024年南方醫(yī)科大學
- 廣西2024年廣西特種設備檢驗研究院招聘筆試上岸歷年典型考題與考點剖析附帶答案詳解
- 家用掃地機器人機械結構設計
- (高清版)JTGT 5440-2018 公路隧道加固技術規(guī)范
- 職場C位指南-大學生職業(yè)素養(yǎng)養(yǎng)成智慧樹知到期末考試答案章節(jié)答案2024年云南林業(yè)職業(yè)技術學院
- 2.6高壓電力電容器運行與維護
- 美學與人生智慧樹知到期末考試答案2024年
- GB/T 3953-2024電工圓銅線
- 碘缺乏病知識宣傳課件
- 曙光醫(yī)院網上查報告
評論
0/150
提交評論