Java常見異常和錯誤
總結JAVA常見的異常和錯誤。
操作方法
(01)1、 在某一路徑下執行編譯好的class檔案出錯。異常如下:E:liwy>java Test98Exception in thread "main" assDefFoundError: Test98如果出現了以上錯誤提示,常見問題有如下兩種:1 大小寫寫錯了, 2 路徑不正確。
(02)2、陣列錯誤,訪問不存在的陣列,陣列超出繫結,程式碼如下:public class ArrayDemo{public static void main(String args[]){int array[] = null; //宣告陣列array = new int[3]; //為陣列開闢空間,大小為3for(int i=0;i<th;i++){tln("array["+i+"]="+i);}//訪問陣列沒有開闢的下標,這時會報異常tln("array[3]="+array[3]);}}異常如下:array[0]=0array[1]=1array[2]=2Exception in thread "main" yIndexOutOfBoundsException: 3at ()以上就是陣列的索引超出繫結,就是表示陣列越界。
(03)3、某個類沒有例項化,訪問類屬性時,出現空指標異常class Person{String name ; // 宣告姓名屬性int age ; // 宣告年齡屬性public void tell(){ // 取得資訊tln("姓名:" + name + ",年齡:" + age) ;}};public class ClassDemo03{public static void main(String args[]){Person per = null ; // 宣告物件//per = new Person() ; // 例項化物件 = "張三" ; // 為姓名賦值 = 30 ; // 為年齡賦值() ; // 呼叫方法,列印資訊}};異常如下:Exception in thread "main" PointerExceptionat ()
(04)4、錯誤的多型,出現異常class A{ // 定義類Apublic void fun1(){ // 定義fun1()方法tln("A --> public void fun1(){}") ;}public void fun2(){1() ; // 呼叫fun1()方法}};class B extends A{public void fun1(){ // 此方法被子類覆寫了tln("B --> public void fun1(){}") ;}public void fun3(){tln("B --> public void fun3(){}") ;}};public class PolDemo03{public static void main(String asrgs[]){A a = new A() ; // 例項化了一個父類物件B b = (B)a ; // 發生了向下轉型關係1() ;2() ;3() ;}};異常如下:Exception in thread "main" sCastException: Aat ()
(05)5、兩個數字相除,被除數為0,出現異常public class ExceptionDemo01{public static void main(String args[]){tln("********** 計算開始 ***********") ;int i = 10 ; // 定義整型變數int j = 0 ; // 定義整型變數int temp = i / j ; // 此處產生了異常tln("兩個數字相除的結果:" + temp) ;tln("********** 計算結束 ***********") ;}};異常如下:********** 計算開始 ***********Exception in thread "main" hmeticException: / by zeroat (:6)
(06)6、兩個數字相除,輸入兩個引數,分別為字母a 和b,出現異常,數字格式化出問題public class ExceptionDemo04{public static void main(String args[]){tln("********** 計算開始 ***********") ;int i = 0 ; // 定義整型變數int j = 0 ; // 定義整型變數try{String str1 = args[0] ; // 接收第一個引數String str2 = args[1] ; // 接收第二個引數i = eInt(str1) ; // 將第一個引數由字元串變為整型j = eInt(str2) ; // 將第二個引數由字串變為整型int temp = i / j ; // 此處產生了異常tln("兩個數字相除的結果:" + temp) ;tln("----------------------------") ;}catch(ArithmeticException e){ // 捕獲算術異常tln("出現異常了:" + e) ;}tln("********** 計算結束 ***********") ;}};異常如下:********** 計算開始 ***********Exception in thread "main" erFormatException: For input string: "a"at nputString()at eInt()at eInt()at (
(07)7、兩個數字相除,輸入兩個引數,如果兩個引數什麼也不輸入,出現異常,陣列超出繫結。異常如下:********** 計算開始 ***********Exception in thread "main" yIndexOutOfBoundsException: 0at (:7)
(08)7、assert斷言的使用,當斷言結果不對出現異常。public class Test{public static void main(String args[]){int i[] = {1,2,3}; // 陣列長度為3assert th==0; // 此處斷言陣列長度為0}}異常如下:D:d程式碼>java -ea TestException in thread "main" rtionErrorat (:5)l 斷言需要在執行時需要加上“-ea”,如上java –ea 類名。
-
word2016腳註和尾註怎麼設定 腳註尾註如何轉換
在我們日常工作中,編輯Word文件時,需要對一些名詞、句子進行解釋說明,那麼我們需要用到腳註,或是尾註。那怎麼進行設定呢,下面就來進行簡單的說明。操作方法(01)雙擊開啟word文件,選中需要加腳註的文字,然後點選選單欄【引用】。(02)然後點選【插入腳註】。(03)此時會在此頁...
-
光碟燒錄大師免費版圖文使用教程
光碟燒錄大師是涵蓋了資料燒錄、光碟備份與複製功能的軟體,其使用者使用評價好錯參半,見仁見智吧。現在網上也流行使用光碟燒錄軟體大師免費版,今天就把光碟燒錄軟體大師免費版的圖文使用教程教給大家:操作方法(01)開啟燒錄軟體後,從右上角開始,我們可以看到有“新增視...
-
不用U盤,安裝純淨版Windows系統
安裝系統的方法有好多種,U盤製作啟動盤安裝時,會自帶一些軟體瀏覽器啊、小遊戲、桌面桌布什麼,萬能驅動的,裝完後又要一個個解除安裝,但是註冊列表又沒法清理乾淨。如何安裝純淨版的Windows系統,讓我們一起跟著步驟來實現吧!操作方法(01)在搜狗瀏覽器中搜索:MSDN,選擇官方網站...
-
Win10系統怎麼登陸Microsoft賬戶
如果有小夥伴想知道Win10系統怎麼登陸Microsoft賬戶,可以來看看下面的步驟哦!一、先註冊賬戶。(01)在網上搜索“Microsoft賬戶註冊”,找搜尋結果中找到註冊官網進行註冊。(02)進入註冊介面以後,輸入正確的相關資訊,然後輸入密碼和其他的資訊。(03)輸入完成之後,我們就可以...