黑馬程序員java培訓(xùn)就業(yè)班筆記day11總結(jié)_第1頁
黑馬程序員java培訓(xùn)就業(yè)班筆記day11總結(jié)_第2頁
黑馬程序員java培訓(xùn)就業(yè)班筆記day11總結(jié)_第3頁
黑馬程序員java培訓(xùn)就業(yè)班筆記day11總結(jié)_第4頁
黑馬程序員java培訓(xùn)就業(yè)班筆記day11總結(jié)_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Day11知識總結(jié):1、 異常處理細(xì)節(jié):1、 定義功能時,功能中有什么問題,都應(yīng)該進(jìn)行預(yù)先的處理比如try catch.如果處理不了,應(yīng)該通過throws聲明拋出,讓調(diào)用者進(jìn)行處理。2、 調(diào)用了拋出異常的功能的函數(shù),應(yīng)該進(jìn)行處理,如果使用try catch處理的話,被調(diào)用的功能上拋出幾個異常,就應(yīng)該對應(yīng)幾個catch語句,必須要對多個異常進(jìn)行針對性的處理。3、 如果出現(xiàn)多個catch中存在著父類異常的catch,那么這個catch一定放在catch的最后,通常這種情況在面試很多見。4、 如果函數(shù)內(nèi)拋出異常,那么一定要在函數(shù)上聲明,否則編譯失敗,但是要注意函數(shù)內(nèi)拋出的異常是運行時異常(Runti

2、meException),那么函數(shù)上是可以不用throws聲明的。5、 如果函數(shù)內(nèi)拋出了異常,進(jìn)行了本功能內(nèi)部的處理,但是處理的并不完全,這時應(yīng)該在異常處理中,繼續(xù)將異常拋出,讓在函數(shù)上聲明讓調(diào)用者知道問題的存在,但是有可能需要將異常進(jìn)行轉(zhuǎn)換,盡量拋出調(diào)用者識別的異常,處理起來更方便。6、 當(dāng)子類覆蓋父類中的異常聲明的方法時,子類方法只能聲明父類的異?;蛘咴摦惓5淖宇?。如果父類拋出了多個異常,那么子類在覆蓋時買智能拋出父類異常的子集。7、 如果父類和接口中的方法沒有聲明拋出過異常,那么子類的覆蓋父類方法時,也不能拋出異常,如果子類中的方法發(fā)生了異常,那么子類只能try catch不能用thro

3、ws聲明,只能try,不能拋,如果非要在函數(shù)內(nèi)拋出異常,那么只能拋出RuntimeException,因為這種異常不用在函數(shù)聲明上。2、 finally:定義一定會被執(zhí)行的代碼。通常用來關(guān)閉資源,異常處理的三種格式:1、 try catch finally2、 Try catch/可以多個catch3、 Try finally記?。篶atch是用于處理異常的,如果沒有catch就代表異常沒有被處理過,如故哦該異常是檢測時異常,必須被聲明。代碼體現(xiàn):3、 異常總結(jié):異常是什么?是對問題的描述,將問題進(jìn)行對象的封裝。異常體系:Throwable|-Error|-Exception|-Runtime

4、Exception異常體系的特點:異常體系中的所有類以及建立的對象都具有可拋性。也就說可以被throw和throws關(guān)鍵字操作。只有異常體系具備這個特點。Throw和throws的用法:Throw定義在函數(shù)內(nèi),用于拋出異常對象。Throws定義在函數(shù)上,用于拋出異常類,可以拋出多個用逗號隔開。函數(shù)內(nèi)有throw拋出異常對象,并未進(jìn)行try處理必須要在函數(shù)上聲明,否則編譯失敗,注意:RuntimeException異常除外,也就說函數(shù)內(nèi)如果拋出的是RuntimeException函數(shù)上可以不用聲明,如果函數(shù)聲明了異常,調(diào)用者需要進(jìn)行處理 嗎,處理方式throws也可以try異常有兩種:1、 編譯

5、時檢測異常:該異常在編譯時如果沒有處理,如果沒有處理(沒有拋也沒有try)編譯失敗2、 運行時異常在編譯時,不需要處理,編譯器不檢查,該異常發(fā)生,建議不處理,讓程序停止,需要對代碼進(jìn)行修正。異常處理的語句:try需要被檢測的代碼catch()異常處理代碼fianlly一定會執(zhí)行的代碼有三種結(jié)合的格式:1、trycatch()finally2、trycatch()3、tryfinally注意:1、finally中定義的通常是關(guān)閉資源,因為資源必須被釋放。2、finally只有一種情況不會執(zhí)行,當(dāng)執(zhí)行到System.exit(0);finally不會執(zhí)行。5、自定義異常 定義類繼承Exceptio

6、n或者RuntimeException 1、為了讓該自定義類具備可拋性。 2、讓該類具備操作異常的共性方法。 當(dāng)要定義自定義異常的信息時,可以使用父類已經(jīng)定義好的功能 將異常信息傳遞給父類的構(gòu)造函數(shù), class MyException extends Exception MyException(String message)super(message); 自定義異常:按照java的面向?qū)ο笏枷?,將程序中出現(xiàn)的特有問題進(jìn)行封裝。 異常的好處: 1、將問題進(jìn)行封裝。 2、將正常流程代碼和問題處理代碼相分離,方便閱讀 異常的處理原則: 1、處理方式有兩種:try 或者throws。 2、調(diào)用到拋出

7、異常的功能時,拋出幾個就處理幾個。 一個try對應(yīng)多個catch的情況。 3、多個catch父類的catch放到最下面。 4、catch內(nèi)需要定義針對性的處理方式,不要簡單的定義printStackTrace,輸出語句。 也不要不寫。當(dāng)捕獲到的異常,本功能處理不了時,可以繼續(xù)在catch中拋出。 try throw new AException catch(AException e) throw e; 如果該異常處理不了,但并不屬于該功能出現(xiàn)的異常,可以將異常轉(zhuǎn)換后,在拋出和該功能相關(guān)的異常。 或者異??梢蕴幚恚?dāng)需要將異常產(chǎn)生的和本功能相關(guān)的問題提供出去,當(dāng)調(diào)用者知道,并處理,也可以將捕獲的

8、異常處理后,轉(zhuǎn)換新的異常。 try throw new AException(); catch(AException e) throw new BException(); 比如匯款的列子:異常的注意事項:在子父類覆蓋時:1、子類拋出的異常必須是父類異常的子類或者子集。2、如果父類或者接口沒有異常拋出時,子類覆蓋出現(xiàn)異常,只能try不能拋。-包:package 了解即可1、對類文件進(jìn)行分類管理2、給類提供多層命名空間3、寫在程序文件的第一行4、類名的全稱的是 包名.類名5、包也是一種封裝形式。結(jié)論:包與包之間訪問,被訪問的包中的類必須是共有的,被訪問的類中的成員也是共有的,才可以訪問到 publ

9、ic: protected: default: private:同一類中 ok ok ok ok同一包中 ok ok ok 子類 ok ok 不同包中 ok包與包之間還有一種權(quán)限可用,protect保護權(quán)限,只給不同包中的子類提供訪問。package pack.hahe.hehe;這樣的格式非常多見。一般都是用域名來給包其名字package cn.itcast.day11.demo;那類名就得:cn.itcast.day11.demo.PackageDemo如何解決這個類名過長的問題呢?為了簡化代碼書寫,可以使用一個關(guān)鍵字來完成。這個關(guān)鍵字importimport:導(dǎo)入的意思,import p

10、ackage.DemoA導(dǎo)入package包中的DemoA類。import packa.*;*通配符導(dǎo)入這個包中所有的類。也就是當(dāng)前目錄下所有的類,。/將packa包中的當(dāng)前的目錄下所有的類。不包含子包中的類文件。import packa.abc.*;導(dǎo)入了packa包中abc子包中的類。原則:用到哪個類就具體導(dǎo)入哪個類。不要全部寫*;import的作用就是為了簡化類名書寫的。jar包:了解即可java的壓縮包,方便項目的攜帶,方便于使用,只要在classpath設(shè)置路徑即可,java.lang:languagejava的語言包,也就是java的核心包。Object System String Throwable Thread jdk1.2版本以后,該包中的類會自動導(dǎo)入。java.applet:application let 客戶端的應(yīng)用程序。這是一種可以將java的類文件嵌入在網(wǎng)頁中。 server let-> servlet:處理客戶的請求,給客戶

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論