java中Exception是什麼

Exception是JAVA異常類 是Throwable的子類(Error也是她的子類,Error是比較嚴重的錯誤)
異常分為普通異常和運行時異常,運行時異常我們可以不處理,可以讓虛擬機來管。
普通異常我們必須捕獲(try{}catch(Exception e){}finally{})

㈡ java中異常與錯誤有什麼區別

在.lang軟體包中有一個java.lang.Throwable類,這個類是java中所有錯誤和異常的超類。
顧名思義,這個類(以及子類)的實例可以通過JVM或者java的throw語句拋出。而catch子句的參數也只能是Throwable類型(或者其子類型)。
Throwable類有兩個子類,Error與 Exception。
錯誤與異常都是在程序編譯和運行時出現的錯誤。不同的是,異常可以被開發人員捕捉和處理;而錯誤一般是系統錯誤,一般不需要開發人員處理(也無法處理),比如內存溢出。

Exception是java中所有異常的基類。在java中異常被分為兩大類,編譯時異常和運行時異常。

編譯時異常是由於外在條件不滿足而引發的,比如程序視圖打開一個並不存在的遠程Socket埠。這種異常是可預知的。編譯器強制要求對編譯時異常進行捕獲或聲明。
運行時異常往往是系統錯誤,比如數組下標越界等。通常我們可以不做處理,系統會把它們交給預設的異常處理程序。有人說在運行時異常出現後,異常會被一層層向上拋直到找到處理代碼,如果我們沒有處理運行時異常,異常會被拋到最上層然後拋出,從而導致最上層程序或線程退出。

Error是java中所有錯誤的基類。錯誤通常是我們無法處理的,絕大多數情況下,我們不應該試圖捕獲錯誤。

㈢ java拋出異常是什麼意思

不是扔掉,是告訴你,並且不會檢查下一個蘋果。異常處理就是當程序捕獲異回常的時候,給出一個答信號捕獲並做處理,一般捕獲之後就會告訴程序員程序出錯了。更像是檢測家禽,當發現這只雞有問題的時候,對不起,後面的雞都不能通過。

㈣ JAVA什麼是異常

異常通常指,你的代碼可能在編譯時沒有錯誤,可是運行時會出現異常。版比如常見的空指權針異常。也可能是程序可能出現無法預料的異常,比如你要從一個文件讀信息,可這個文件不存在,程序無法運行下去了,故程序要抓這些異常,通過異常處理機制來拋出這些異常,程序員就可以通過拋出的異常來修改代碼。try{}catch{}finally{}try塊中放入可能會出現異常的代碼,catch塊負責捕獲異常,finally塊負責處理一些必須執行的代碼,比較關閉流等。

㈤ Java中,運行異常和一般異常的區別是什麼

運行時異常:由java虛擬機拋出的異常。用戶不必處理。 而一般異常是用戶可以拋出回的異常,如果拋出調用必須答進行處理。

1,從機制角度來講:
運行時異常:
在定義方法時不需要聲明會拋出runtime exception;
在調用這個方法時不需要捕獲這個runtime exception;
runtime exception是從java.lang.RuntimeException或java.lang.Error類衍生出來的。

一般異常:
定義方法時必須聲明所有可能會拋出的checked exception;
在調用這個方法時,必須捕獲它的checked exception,不然就得把它的exception傳遞下去;
checked exception是從java.lang.Exception類衍生出來的。
2,從邏輯的角度來說,
運行時異常和一般異常是有不同的使用目的的。一般異常用來指示一種調用方能夠直接處理的異常情況。而運行時則用來指示一種調用方本身無法處理或恢復的程序錯誤。

㈥ java異常 著什麼意思

at weiqi.ChessPad.mousePressed(Go.java:178)
這一行報空指針,看哪個變數沒有初始值

㈦ java一般異常指的是什麼

作為一隻敬業的程序員,就是不能接受我的編程出現bug!可見我們對bug是如此的深惡痛覺!它已成為我們職業生涯中的攔路虎,所以今天精心為大家總結一下Java中常見的幾種異常,望大家多多注意。

1、java.lang.NullPointerException(空指針異常)
調用了未經初始化的對象或者是不存在的對象。經常出現在創建圖片,調用數組這些操作中,比如圖片未經初始化,或者圖片創建時的路徑錯誤等等。對數組操作中出現空指針, 即把數組的初始化和數組元素的初始化混淆起來了。數組的初始化是對數組分配需要的空間,而初始化後的數組,其中的元素並沒有實例化, 依然是空的,所以還需要對每個元素都進行初始化(如果要調用的話)。
2、 java.lang.ClassNotFoundException指定的類不存在
這里主要考慮一下類的名稱和路徑是否正確即可,通常都是程序試圖通過字元串來載入某個類時可能引發異常。比如:調用Class.forName();或者調用ClassLoad的finaSystemClass();或者LoadClass();
3、 java.lang.NumberFormatException字元串轉換為數字異常
當試圖將一個String轉換為指定的數字類型,而該字元串確不滿足數字類型要求的格式時,拋出該異常.如現在講字元型的數據「123456」轉換為數值型數據時,是允許的。但是如果字元型數據中包含了非數字型的字元,如123#56,此時轉換為數值型時就會出現異常。系統就會捕捉到這個異常,並進行處理。
4、java.lang.IndexOutOfBoundsException數組下標越界異常
查看調用的數組或者字元串的下標值是不是超出了數組的范圍,一般來說,顯示(即直接用常數當下標)調用不太容易出這樣的錯,但隱式(即用變數表示下標)調用就經常出錯了,還有一種情況,是程序中定義的數組的長度是通過某些特定方法決定的,不是事先聲明的,這個時候先查看一下數組的length,以免出現這個異常。
5、java.lang.IllegalArgumentException方法的參數錯誤
比如g.setColor(int red,int green,int blue)這個方法中的三個值,如果有超過255的也會出現這個異常,因此一旦發現這個異常,我們要做的,就是趕緊去檢查一下方法調用中的參數傳遞是不是出現了錯誤。
6、java.lang.IllegalAccessException沒有訪問許可權
當應用程序要調用一個類,但當前的方法即沒有對該類的訪問許可權便會出現這個異常。對程序中用了Package的情況下要注意這個異常。
7、java.lang.ArithmeticException數學運算異常
當算術運算中出現了除以零這樣的運算就會出這樣的異常。
8、java.lang.ClassCastException數據類型轉換異常
當試圖將對某個對象強制執行向下轉型,但該對象又不可轉換又不可轉換為其子類的實例時將引發該異常,如下列代碼。
Object obj = new Integer(0);
String str = obj;
9、 java.lang.FileNotFoundException文件未找到異常
當程序試圖打開一個不存在的文件進行讀寫時將會引發該異常。該異常由FileInputStream,FileOutputStream,RandomAccessFile的構造器聲明拋出,即使被操作的文件存在,但是由於某些原因不可訪問,比如打開一個只讀文件進行寫入,這些構造方法仍然會引發異常。
10、java.lang.ArrayStoreException數組存儲異常
當試圖將類型不兼容類型的對象存入一個Object[]數組時將引發異常,如
Object[] obj = new String[3]
obj[0] = new Integer(0);
11、java.lang.NoSuchMethodException方法不存在異常
當程序試圖通過反射來創建對象,訪問(修改或讀取)某個方法,但是該方法不存在就會引發異常。
12、 java.lang.NoSuchFiledException方法不存在異常
當程序試圖通過反射來創建對象,訪問(修改或讀取)某個filed,但是該filed不存在就會引發異常。
13、 java.lang.EOFException文件已結束異常
當程序在輸入的過程中遇到文件或流的結尾時,引發異常。因此該異常用於檢查是否達到文件或流的結尾
14、java.lang.InstantiationException實例化異常
當試圖通過Class的newInstance()方法創建某個類的實例,但程序無法通過該構造器來創建該對象時引發。Class對象表示一個抽象類,介面,數組類,基本類型 。該Class表示的類沒有對應的構造器。
15、java.lang.InterruptedException被中止異常
當某個線程處於長時間的等待、休眠或其他暫停狀態,而此時其他的線程通過Thread的interrupt方法終止該線程時拋出該異常。
16、java.lang.CloneNotSupportedException 不支持克隆異常
當沒有實現Cloneable介面或者不支持克隆方法時,調用其clone()方法則拋出該異常。
17、java.lang.OutOfMemoryException 內存不足錯誤
當可用內存不足以讓Java虛擬機分配給一個對象時拋出該錯誤。
18、java.lang.NoClassDefFoundException 未找到類定義錯誤
當Java虛擬機或者類裝載器試圖實例化某個類,而找不到該類的定義時拋出該錯誤。
違背安全原則異常:SecturityException
操作資料庫異常:SQLException
輸入輸出異常:IOException
通信異常:SocketException
以上便是Java常見的幾種異常,希望各位同學都能編譯出完美的代碼,笑隱竹林中!編碼bug,江湖永無相見!

㈧ java什麼是異常,和錯誤有什麼區別

Error和
Exception
都繼承自Thorwable。
Error是錯誤,是
不可挽回
的,也就是說,出了Error程序就掛了,最常見的專就是OutOfMemoryError。
編譯時異常指屬的是我們必須在代碼中顯示的處理,或者try或者throw,處理完成後才能編譯成功,常見的是IO
Exception

運行期異常指的是我們寫的代碼可以編譯通過,但是如果運行時出現問題,則會出現運行期異常,最常見的就是NullPointerException、IndexOutOfBoundsException

㈨ 常見的java異常有哪些都是什麼意思

1、ArithmeticException - 算術運算中,被0除或模除。

2、 - 數組越界訪問。

3、ArrayStoreException - 數據存儲異常,寫數組操作時,對象或數據類型不兼容。

4、ClassCastException - 類型轉換異常。

5、IllegalArgumentException - 方法的參數無效。

6、IllegalThreadStateException - 試圖非法改變線程狀態,比方說試圖啟動一已經運行的線程。

7、NullPointerException - 試圖訪問一空對象的變數、方法或空數組的元素

8、NumberFormatException - 數據格式異常,試圖把一字元串非法轉換成數值(或相反)。

9、SecurityException - 如果Applet試圖執行一被WWW瀏覽器安全設置所禁止的操作。

10、 - 如改變了某一類定義,卻沒有重新編譯其他引用了這個類的對象。如某一成員變數的聲明被從靜態改變為非靜態,但其他引用了這個變數的類卻沒有重新編譯,或者相反。

11、OutOfMemoryException - 內存不足,通常發生於創建對象之時。

12、NoClassDefFoundException - JAVA運行時系統找不到所引用的類。

13、IncompatibleTypeException - 試圖實例化一個介面,Java運行時系統將拋出這個異常。

14、UnsatisfiedLinkException - 如果所需調用的方法是C函數,但Java運行時系統卻無法連接這個函數。

15、InternalException - 系統內部故障所導致的異常情況,可能是因為Java運行時系統本身的原因。如果發現一可重現的InternalException,可以直接給Sun公司發電郵[email protected]

㈩ 什麼叫java異常,一直沒有理解。

你在編寫程序的時候,會考慮到很多情況,比如出現A情況怎麼辦,出現B情況怎麼辦,但不管你的思想有多麼縝密,總有一些情況你是無法考慮到的,或者它本身就是不可預知的,就好比你考慮到了你的程序所有代碼都安全了,但沒考慮到聯網的時候,有個客戶端給你發送了一個不合法的地址,從而造成程序不能處理,從而崩潰;又或者你需要訪問資料庫讀取一條記錄,本身就會面臨記錄不存在,或者有其他程序正在修改,從而鎖定這條記錄的情況。

面對這種種你想不到或者有可能出錯的行為的時候,就要用到異常。Java的異常就是提示你來處理這些各種你沒想到卻出現的情況,或者那些有問題的操作,從而完善的程序——因為如果不用解決的話,上面提到的這些操作會立刻被JVM中斷,但程序會因為情況無法處理而中斷,也就是崩潰了。

拋出異常,意思就是JVM在通過異常機製取得了這些意外情況的具體信息之後,把這些信息以一個異常的形式反饋給你,意思是「這里出現了意想之外的情況」。而你要做的,就是根據異常的具體提示信息,判斷到底是哪裡出現了問題,進行有針對的修改。

簡而言之,異常是JVM對程序的一個保護機制,也是程序員用來調試程序的最可靠手段。