Java中的异常:

1. Throwable是所有异常的根,java.lang.Throwable

Throwable包含了错误(Error)和异常(Exception),Exception又包含了运行时异常。

Error:java.lang.Error

Exception:java.lang.Exception

2. Exception

一般分为Checked异常和Runtime异常,所有RuntimeException类及其子类的实例被称为Runtime异常,不属于该范畴的异常则被称为CheckedException

(1)Checked异常

只有java语言提供了checked异常,Java认为Checked异常都是可以被处理的异常,这些异常从程序的角度来说是必须要处理的异常,否则编译不通过。符合java的设计思想:没有完善处理错误的代码就没有机会被执行。对Checked异常的处理方法两种:

1)当前方法指导如何处理该异常,则用try...catch快来处理该异常。

2)当前方法不知道如何处理,则在定义该方法时生命抛出异常。

比较常见的Checked异常:

java.lang.ClassNotFoundException

java.lang.NoSuchMethodException

(2)RuntimeException

Runtime如除数是0和数组下标越界等,其产生频繁,处理麻烦,若显示申明或者捕获将会对程序的可读性和运行效率影响很大。所有由系统自动检测并它们交给缺省的异常处理程序。当然如果你有处理要求也可以显示捕获它们。

比较常见的RuntimeException类的子类有:

java.lang.ArithmeticException

java.lang.ArrayStoreException

java.lang.IndexOutOfBoundsException

java.lang.NullPointerException

3. Error

当程序发生不可控的错误时,通常做法是通知用户并终止程序的执行。与异常不同的是Error及其子类的对象不应该被抛出。Error是Throwable子类,代表编译时间和系统错误,用于指示合理的应用,程序不应该试图捕获的严重问题。Error由Java虚拟机生成并抛出,包括动态链接失败,虚拟机错误等。程序对其不做处理。

java中的异常类的更多相关文章

  1. JAVA中常见异常类

    1. java.lang.nullpointerexception 这个异常大家肯定都经常遇到,异常的解释是"程序遇上了空指针",简单地说就是调用了未经初始化的对象或者是不存在的对 ...

  2. 深入探讨Java中的异常与错误处理

    Java中的异常处理机制已经比较成熟,我们的Java程序到处充满了异常的可能,如果对这些异常不做预先的处理,那么将来程序崩溃就无从调试,很难找到异常所在的位置.本文将探讨一下Java中异常与错误的处理 ...

  3. 【Java心得总结二】浅谈Java中的异常

    作为一个面向对象编程的程序员对于 下面的一句一定非常熟悉: try { // 代码块 } catch(Exception e) { // 异常处理 } finally { // 清理工作 } 就是面向 ...

  4. Java中的异常-Throwable-Error-Exception-RuntimeExcetpion-throw-throws-try catch

    今天在做一个将String转换为Integer的功能时,发现Integer.parseInte()会抛出异常NumberFormatException. 函数Integer.parseInt(Stri ...

  5. Java基础(43):Java中的Object类与其方法(转)

    Object类 java.lang.Object java.lang包在使用的时候无需显示导入,编译时由编译器自动导入. Object类是类层次结构的根,Java中所有的类从根本上都继承自这个类. O ...

  6. Java中的异常详解

    一.异常定义 阻止当前方法或作用域继续执行的问题,称为异常 二.异常分析      所有不正常类都继承Throwable类,这个类主要有两个子类Error类和Exception类.Error指系统错误 ...

  7. Java中的异常和处理详解

    简介 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常.异常发生时,是任程序自生自灭,立刻退出终止,还是输出错误给用户?或者用C语言风格:用函数返回值作为执行状态?. ...

  8. Java中的Throable类是不是受查异常?

    Q: Throable是不是受查异常? A: 是 在Java规范中,对非受查异常和受查异常的定义是这样的: The unchecked exception classes are the run-ti ...

  9. Java中的异常简介

    Java中异常的分类 Java中的异常机制是针对正常运行程序的一个必要补充,一般来说没有加入异常机制,程序也能正常运营,但是,由于入参.程序逻辑的严谨度,总会有期望之外的结果生成,因此加入异常机制的补 ...

随机推荐

  1. JAVA进阶18

    间歇性混吃等死,持续性踌躇满志系列-------------第18天 1.飞机游戏小项目 ①创建窗口 package cn.xfj.game; import javax.swing.*; import ...

  2. 使用scrapy爬虫,爬取今日头条首页推荐新闻(scrapy+selenium+PhantomJS)

    爬取今日头条https://www.toutiao.com/首页推荐的新闻,打开网址得到如下界面 查看源代码你会发现 全是js代码,说明今日头条的内容是通过js动态生成的. 用火狐浏览器F12查看得知 ...

  3. go语言关于值类型和引用类型

    前言:关于值类型和引用类型确实是个比较绕的问题,之前在学校的时候学习C语言的时候,就感觉没有看太懂,后面看java,关于引用也是模模糊糊,这个东西也确实比较抽象,估计好多写了好几年代码的人有也有些迷惑 ...

  4. python学习记录20190122_增量赋值

    python中的增量赋值 一,在python中a=a+b和a+=b有区别吗 **1,对可变的数据类型 a=[1,2,3]print(id(a)) #1602469350792b=[4,5]a=a+bp ...

  5. htmlunit+fastjson抓取酷狗音乐 qq音乐链接及下载

    上次学了jsoup之后,发现一些动态生成的网页内容是无法抓取的,于是又学习了htmlunit,下面是抓取酷狗音乐与qq音乐链接的例子: 酷狗音乐: import java.io.BufferedInp ...

  6. 论文阅读笔记五十五:DenseBox: Unifying Landmark Localization with End to End Object Detection(CVPR2015)

    论文原址:https://arxiv.org/abs/1509.04874 github:https://github.com/CaptainEven/DenseBox 摘要 本文先提出了一个问题:如 ...

  7. .net基础学java系列(二)IDE 之 插件

    上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT ...

  8. C++ STL容器总结

    1.    STL 容器 1.    按种类划分 顺序容器( sequence containers):是一种各元素之间有顺序关系的线性表,是一种线性结构的可序群集.顺序性容器中的每个元素均有固定的位 ...

  9. 【Vue】Vue初探

    从去年年底到现在,陆续接触了React.Backbone等前端框架以及NodeJs等相关前端知识.不得不说现在前端发展太快了.以前我们还在为选择用哪种编程语言而烦恼,现在前端领域已经在为使用哪种框架而 ...

  10. Definition of matrix norms

    In my previous post, I introduced various definitions of matrix norms in \(\mathbb{R}^{n \times n}\) ...