資源描述:
《java常見異常解析》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、JAVA常見異常解析--xyyan1.java.lang.nullpointerexception 這個異常大家肯定都經(jīng)常遇到,異常的解釋是"程序遇上了空指針",簡單地說就是調(diào)用了未經(jīng)初始化的對象或者是不存在的對象,這個錯誤經(jīng)常出現(xiàn)在創(chuàng)建圖片,調(diào)用數(shù)組這些操作中,比如圖片未經(jīng)初始化,或者圖片創(chuàng)建時的路徑錯誤等等。對數(shù)組操作中出現(xiàn)空指針,很多情況下是一些剛開始學習編程的朋友常犯的錯誤,即把數(shù)組的初始化和數(shù)組元素的初始化混淆起來了。數(shù)組的初始化是對數(shù)組分配需要的空間,而初始化后的數(shù)組,其中的元素并沒有實例化,依然是空的,所以還需要
2、對每個元素都進行初始化(如果要調(diào)用的話) 2.java.lang.classnotfoundexception 這個異常是很多原本在jb等開發(fā)環(huán)境中開發(fā)的程序員,把jb下的程序包放在wtk下編譯經(jīng)常出現(xiàn)的問題,異常的解釋是"指定的類不存在",這里主要考慮一下類的名稱和路徑是否正確即可,如果是在jb下做的程序包,一般都是默認加上package的,所以轉(zhuǎn)到wtk下后要注意把package的路徑加上。 3.java.lang.arithmeticexception 這個異常的解釋是"數(shù)學運算異常",比如程序
3、中出現(xiàn)了除以零這樣的運算就會出這樣的異常,對這種異常,大家就要好好檢查一下自己程序中涉及到數(shù)學運算的地方,公式是不是有不妥了。 4.java.lang.arrayindexoutofboundsexception 這個異常相信很多朋友也經(jīng)常遇到過,異常的解釋是"數(shù)組下標越界",現(xiàn)在程序中大多都有對數(shù)組的操作,因此在調(diào)用數(shù)組的時候一定要認真檢查,看自己調(diào)用的下標是不是超出了數(shù)組的范圍,一般來說,顯示(即直接用常數(shù)當下標)調(diào)用不太容易出這樣的錯,但隱式(即用變量表示下標)調(diào)用就經(jīng)常出錯了,還有一種情況,是程序中定義的數(shù)組的長度是
4、通過某些特定方法決定的,不是事先聲明的,這個時候,最好先查看一下數(shù)組的length,以免出現(xiàn)這個異常。 5.java.lang.illegalargumentexception 這個異常的解釋是"方法的參數(shù)錯誤",很多j2me的類庫中的方法在一些情況下都會引發(fā)這樣的錯誤,比如音量調(diào)節(jié)方法中的音量參數(shù)如果寫成負數(shù)就會出現(xiàn)這個異常,再比如g.setcolor(intred,intgreen,intblue)這個方法中的三個值,如果有超過255的也會出現(xiàn)這個異常,因此一旦發(fā)現(xiàn)這個異常,我們要做的,就是趕緊去檢查一下方法調(diào)用中的參數(shù)
5、傳遞是不是出現(xiàn)了錯誤?! ?.java.lang.illegalaccessexception 這個異常的解釋是"沒有訪問權(quán)限",當應(yīng)用程序要調(diào)用一個類,但當前的方法即沒有對該類的訪問權(quán)限便會出現(xiàn)這個異常。對程序中用了package的情況下要注意這個異常?! ∑渌€有很多異常,我就不一一列舉了,我要說明的是,一個合格的程序員,需要對程序中常見的問題有相當?shù)牧私夂拖鄳?yīng)的解決辦法,否則僅僅停留在寫程序而不會改程序的話,會極大影響到自己的開發(fā)的。關(guān)于異常的全部說明,在api里都可以查閱。算術(shù)異常類:ArithmeticExecpti
6、on空指針異常類:NullPointerException類型強制轉(zhuǎn)換異常:ClassCastException數(shù)組負下標異常:NegativeArrayException數(shù)組下標越界異常:ArrayIndexOutOfBoundsException違背安全原則異常:SecturityException文件已結(jié)束異常:EOFException文件未找到異常:FileNotFoundException字符串轉(zhuǎn)換為數(shù)字異常:NumberFormatException操作數(shù)據(jù)庫異常:SQLException輸入輸出異常:IOException方法未找到異
7、常:NoSuchMethodExceptionjava.lang.AbstractMethodError抽象方法錯誤。當應(yīng)用試圖調(diào)用抽象方法時拋出。java.lang.AssertionError斷言錯。用來指示一個斷言失敗的情況。java.lang.ClassCircularityError類循環(huán)依賴錯誤。在初始化一個類時,若檢測到類之間循環(huán)依賴則拋出該異常。java.lang.ClassFormatError類格式錯誤。當Java虛擬機試圖從一個文件中讀取Java類,而檢測到該文件的內(nèi)容不符合類的有效格式時拋出。java.lang.Error錯
8、誤。是所有錯誤的基類,用于標識嚴重的程序運行問題。這些問題通常描述一些不應(yīng)被應(yīng)用程序捕獲的反常情況。java.lang.E