• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁 > 培訓(xùn)資料 > 零基礎(chǔ)學(xué)習(xí)java技術(shù)常見的bug有哪些
機(jī)構(gòu)主頁 > 培訓(xùn)資料>零基礎(chǔ)學(xué)習(xí)java技術(shù)常見的bug有哪些

零基礎(chǔ)學(xué)習(xí)java技術(shù)常見的bug有哪些

來源:廣州達(dá)內(nèi)教育        時間:2023-05-30        熱度:38℃        返回列表

         對于零基礎(chǔ)的學(xué)員來說,在沒有基礎(chǔ)的情況下學(xué)習(xí)java技術(shù),怕的就是學(xué)習(xí)的路線不過清晰然后學(xué)習(xí)的過程中經(jīng)常遇到bug了吧。很多的學(xué)員在學(xué)習(xí)java的是沒有經(jīng)過系統(tǒng)性的學(xué)習(xí),在之后的工作中就會出現(xiàn)各種各樣的bug然后又找不出問題了吧。那么對于零基礎(chǔ)學(xué)習(xí)java技術(shù)常見的bug有哪些呢?下面java培訓(xùn)機(jī)構(gòu)的講師就給大家整理一下。


  1、java.lang.NullPointerException(空指針異常)


  調(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ù)組,其中的元素并沒有實例化, 依然是空的,所以還需要對每個元素都進(jìn)行初始化(如果要調(diào)用的話)。


  2、java.lang.ClassNotFoundException指定的類不存在


  這里主要考慮一下類的名稱和路徑是否正確即可,通常都是程序試圖通過字符串來加載某個類時可能引發(fā)異常。比如:調(diào)用Class.forName();或者調(diào)用ClassLoad的finaSystemClass();或者LoadClass();


  3、java.lang.NumberFormatException字符串轉(zhuǎn)換為數(shù)字異常


  當(dāng)試圖將一個String轉(zhuǎn)換為指定的數(shù)字類型,而該字符串確不滿足數(shù)字類型要求的格式時,拋出該異常.如現(xiàn)在講字符型的數(shù)據(jù)“123456”轉(zhuǎn)換為數(shù)值型數(shù)據(jù)時,是允許的。但是如果字符型數(shù)據(jù)中包含了非數(shù)字型的字符,如123#56,此時轉(zhuǎn)換為數(shù)值型時就會出現(xiàn)異常。系統(tǒng)就會捕捉到這個異常,并進(jìn)行處理。


  4、java.lang.IndexOutOfBoundsException數(shù)組下標(biāo)越界異常


  查看調(diào)用的數(shù)組或者字符串的下標(biāo)值是不是超出了數(shù)組的范圍,一般來說,顯示(即直接用常數(shù)當(dāng)下標(biāo))調(diào)用不太容易出這樣的錯,但隱式(即用變量表示下標(biāo))調(diào)用就經(jīng)常出錯了,還有一種情況,是程序中定義的數(shù)組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候先查看一下數(shù)組的length,以免出現(xiàn)這個異常。


  5、java.lang.IllegalArgumentException方法的參數(shù)錯誤


  比如g.setColor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現(xiàn)這個異常,因此一旦發(fā)現(xiàn)這個異常,我們要做的,就是趕緊去檢查一下方法調(diào)用中的參數(shù)傳遞是不是出現(xiàn)了錯誤。


  6、java.lang.IllegalAccessException沒有訪問權(quán)限


  當(dāng)應(yīng)用程序要調(diào)用一個類,但當(dāng)前的方法即沒有對該類的訪問權(quán)限便會出現(xiàn)這個異常。對程序中用了Package的情況下要注意這個異常。


  7、java.lang.ArithmeticException數(shù)學(xué)運(yùn)算異常


  當(dāng)算術(shù)運(yùn)算中出現(xiàn)了除以零這樣的運(yùn)算就會出這樣的異常。


  8、java.lang.ClassCastException數(shù)據(jù)類型轉(zhuǎn)換異常


  當(dāng)試圖將對某個對象強(qiáng)制執(zhí)行向下轉(zhuǎn)型,但該對象又不可轉(zhuǎn)換又不可轉(zhuǎn)換為其子類的實例時將引發(fā)該異常,如下列代碼。


  Object obj = new Integer(0);


  String str = obj;


  9、java.lang.FileNotFoundException文件未找到異常


  當(dāng)程序試圖打開一個不存在的文件進(jìn)行讀寫時將會引發(fā)該異常。該異常由FileInputStream,FileOutputStream,RandomAccessFile的構(gòu)造器聲明拋出,即使被操作的文件存在,但是由于某些原因不可訪問,比如打開一個只讀文件進(jìn)行寫入,這些構(gòu)造方法仍然會引發(fā)異常。


  10、java.lang.ArrayStoreException數(shù)組存儲異常


  當(dāng)試圖將類型不兼容類型的對象存入一個Object[]數(shù)組時將引發(fā)異常,如


  Object[] obj = new String[3]


  obj[0] = new Integer(0);


  11、java.lang.NoSuchMethodException方法不存在異常


  當(dāng)程序試圖通過反射來創(chuàng)建對象,訪問(修改或讀取)某個方法,但是該方法不存在就會引發(fā)異常。


  12、java.lang.NoSuchFiledException方法不存在異常


  當(dāng)程序試圖通過反射來創(chuàng)建對象,訪問(修改或讀取)某個filed,但是該filed不存在就會引發(fā)異常。


  13、java.lang.EOFException文件已結(jié)束異常


  當(dāng)程序在輸入的過程中遇到文件或流的結(jié)尾時,引發(fā)異常。因此該異常用于檢查是否達(dá)到文件或流的結(jié)尾


  14、java.lang.InstantiationException實例化異常


  當(dāng)試圖通過Class的newInstance()方法創(chuàng)建某個類的實例,但程序無法通過該構(gòu)造器來創(chuàng)建該對象時引發(fā)。Class對象表示一個抽象類,接口,數(shù)組類,基本類型 。該Class表示的類沒有對應(yīng)的構(gòu)造器。


  15、java.lang.InterruptedException被中止異常


  當(dāng)某個線程處于長時間的等待、休眠或其他暫停狀態(tài),而此時其他的線程通過Thread的interrupt方法終止該線程時拋出該異常。


  16、java.lang.CloneNotSupportedException 不支持克隆異常


  當(dāng)沒有實現(xiàn)Cloneable接口或者不支持克隆方法時,調(diào)用其clone()方法則拋出該異常。


  以上就是達(dá)內(nèi)科技的小編給大家整理的關(guān)于零基礎(chǔ)學(xué)習(xí)java常見的bug有哪些的內(nèi)容,希望零基礎(chǔ)學(xué)習(xí)java的學(xué)員可以在學(xué)習(xí)的過程總認(rèn)真的學(xué)習(xí)避開這些bug。如果說你是零基礎(chǔ)的學(xué)員想要學(xué)習(xí)java技術(shù)的話,那么達(dá)內(nèi)科技?xì)g迎大家來我們的java培訓(xùn)班進(jìn)行實地考察下,來和我們的講師進(jìn)行面對面的交流和溝通,也可以點擊我們文章下面的獲取試聽資格按鈕來獲取我們java培訓(xùn)免費課程試聽資格,來免費體驗我們的java課程。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部