Java异常处理-检查性异常、非检查性异常、Error

一、Java异常处理详解

Java异常处理-笔记中的@doublefan讲解得非常通熟易懂

异常.png

目录:
1.java中异常的分类
1.1 异常(Exception)
1.1.1 运行时异常(RuntimeException)
可以不需要捕获
1.1.2 编译异常(IOException)
编译器会提示要捕获,如果不进行捕获则编译器会报错
1.2 错误(Error)
3.java处理异常机制
4.throw和throws的区别
5.如何捕获异常
try-catch-finally
6.不同异常的捕获要分开处理

二、检查型异常和非检查性异常对比

Java异常处理-笔记中的@藏剑讲解得非常通熟易懂

检查型异常.png

非检查型异常.png

三、throws和throw的区别 以及 throws、throw和try、catch的对比

Java异常处理-笔记中的@Husky讲解得非常通熟易懂
以下代码来自@Husky

class FuShuException extends Exception //getMessage();
{
    private int value;
    FuShuException()
    {
        super();
    }
    FuShuException(String msg,int value)
    {
        super(msg);
        this.value = value;
    }
    public int getValue()
    {
        return value;
    }
}

class Demo
{
//通过throws 和 throw捕获异常
    int div(int a,int b)throws FuShuException
    {
        if(b<0) {
             // 手动通过throw关键字抛出一个自定义异常对象。
            throw new FuShuException("出现了除数是负数的情况------ / by fushu",b);
        }
        return a/b;
    }
}

class  ExceptionDemo3
{
    public static void main(String[] args)
    {
        Demo d = new Demo();
//通过try-catch捕获异常
        try
        {
            int x = d.div(4,-9);
            System.out.println("x="+x);
        }
        catch (FuShuException e)
        {
            System.out.println(e.toString());
            //System.out.println("除数出现负数了");
            System.out.println("错误的负数是:"+e.getValue());
        }
        System.out.println("over");
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 数据结构队列集合链表、数组字典、关联数组栈树二叉树完全二叉树平衡二叉树二叉查找树(BST)红黑树B-,B+,B*树...
    jackcooper阅读 8,495评论 1 50
  • Exception这个词表达的是一种“例外”情况,亦即正常情况之外的一种“异常”。在问题发生的时候,我们可能不知具...
    王侦阅读 4,866评论 0 1
  • 一直在找一个合适的契机去中山古镇再走一遭,不知是因为去年的这个时候走的地方太少,会觉得那样的古镇异常安静古朴,还是...
    艾晗sunshine阅读 1,761评论 0 0
  • 周米,大学毕业后到北京谋生,在一家广告公司负责做文案,是个工作狂。他经常通宵做文案,并且不止一次地在同事面前抱怨:...
    木鱼沐阅读 864评论 0 0
  • 故事怎么开始的,文小鱼一直都很困惑,回忆起来,大概就是自己同情心泛滥后惹出来的。夏天也不总是闷热闷热的,比如今天,...
    bubbleheadfm阅读 2,615评论 0 0