新聞中心
常見(jiàn)的java異常有哪些?都是什么意思?
1、ArithmeticException - 算術(shù)運(yùn)算中,被0除或模除。

2、ArrayIndexOutOfBoundsException - 數(shù)組越界訪(fǎng)問(wèn)。
3、ArrayStoreException - 數(shù)據(jù)存儲(chǔ)異常,寫(xiě)數(shù)組操作時(shí),對(duì)象或數(shù)據(jù)類(lèi)型不兼容。
4、ClassCastException - 類(lèi)型轉(zhuǎn)換異常。
5、IllegalArgumentException - 方法的參數(shù)無(wú)效。
6、IllegalThreadStateException - 試圖非法改變線(xiàn)程狀態(tài),比方說(shuō)試圖啟動(dòng)一已經(jīng)運(yùn)行的線(xiàn)程。
7、NullPointerException - 試圖訪(fǎng)問(wèn)一空對(duì)象的變量、方法或空數(shù)組的元素
8、NumberFormatException - 數(shù)據(jù)格式異常,試圖把一字符串非法轉(zhuǎn)換成數(shù)值(或相反)。
9、SecurityException - 如果Applet試圖執(zhí)行一被WWW瀏覽器安全設(shè)置所禁止的操作。
10、IncompatibleClassChangeException - 如改變了某一類(lèi)定義,卻沒(méi)有重新編譯其他引用了這個(gè)類(lèi)的對(duì)象。如某一成員變量的聲明被從靜態(tài)改變?yōu)榉庆o態(tài),但其他引用了這個(gè)變量的類(lèi)卻沒(méi)有重新編譯,或者相反。
java中如何一次拋出多個(gè)異常?
百度搜索圈T社區(qū) 免費(fèi)行業(yè)視頻教程
www.aiquanti.com
基本思路就是定義三個(gè)類(lèi),繼承異常的父類(lèi),然后在需要拋出異常的地方,throws一下就可以了,示例如下:
public class CatchMultiException {
public static void main(String[] args) throws Exception {
try {
test(2);
} catch (Exception e) {
Java是不允許同時(shí)拋出多個(gè)異常的,一個(gè)java方法中只能有一個(gè)異常棧,最后一次捕獲拋出的異常會(huì)覆蓋前面的異常。
當(dāng)然也有奇淫伎倆,你做一個(gè)封裝類(lèi)異常把每次拋的異常裝起來(lái)一次拋出。但我不知道這樣的使用場(chǎng)景是什么。
java所有的異常類(lèi)皆繼承哪一個(gè)類(lèi)?
個(gè)人認(rèn)為你的答案是錯(cuò)誤的,因?yàn)?java.lang.throwable是java.lang.exception的父類(lèi),所以所有的類(lèi)應(yīng)該都繼承了throwable個(gè)類(lèi)吧。 你說(shuō)的異常的類(lèi),是只能抽象類(lèi)了.某子類(lèi)c,父類(lèi)p.如果p是普通的類(lèi),則c不必重寫(xiě)p內(nèi)部的方法.重寫(xiě)是可選的.如果p抽象類(lèi),而c類(lèi)本身不是抽象類(lèi),則必須重寫(xiě)p所擁有的所有抽象方法,其中包含p實(shí)現(xiàn)了的接口的方法.以及p類(lèi)以上所有父類(lèi)的抽象方法.
如何在Java程序出現(xiàn)異常時(shí)輸出其文件和行號(hào)?
翻閱JDK,我們找到StackTraceElement這個(gè)類(lèi)。這個(gè)類(lèi)可以從Throwable取得,另外也可以從Thread類(lèi)取得,通過(guò)這些我寫(xiě)如下的一個(gè)打印行號(hào)的測(cè)試程序: 查看源代碼
到此,以上就是小編對(duì)于JAVA的異常有哪些的問(wèn)題就介紹到這了,希望這4點(diǎn)解答對(duì)大家有用。
當(dāng)前文章:java的異常有哪些
網(wǎng)站鏈接:http://fisionsoft.com.cn/article/djecioh.html


咨詢(xún)
建站咨詢(xún)
