java 异常与错误

定义

在程序的运行过程中出现的一些不被期望的效果
在java中有一个定义好的规则Throwable
它有两个子类

Error错误

通常是一些物理的,jvm虚拟机本身出现的问题,程序指令是处理不了的
在这里插入图片描述

Exception异常

通常是给定的程序不=指令产生了一些不符合规范的事情
1:运行时异常(非检查异常)
Erro和RuntimeException都是运行时异常,javac编译的时候不会提示和发现,我们可以手动的try throws
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2:编译时异常(检查异常)
会阻止程序的运行
1:InterrupException
Thread.sleep(5000)

处理异常的手段

处理异常不是指异常消失而是指后续的代码不会因为异常而停止

package my;

public class myThrow {
    public static void main(String[] args) {

        try {
           String a=null;
            System.out.println(a.length());//java.lang.NullPointerException
        } catch (Exception e) {
            e.printStackTrace();
        }
        finally {
            
        }
    }
}


1:try 不能单独出现
2:catch 可以多次出现
3:finally 里的内容必须执行

throws

1:方法能抛出异常,属性不能
2:正常方法和构造方法

package my;

public class myThrow {

    public static void   tc() throws NullPointerException
    {
        String a=null;
        a.length();//NullPointerException

    }
    public static void main(String[] args) {


        try {
            myThrow.tc();
        } catch (NullPointerException e) {
            e.printStackTrace();
            System.out.println("捕获了异常");
        }
        finally {

        }
    }
}

自定义异常

public static void   tc()
    {
       if(3>2)
       {
           throw new TE();
       }

    }

package my;

public class TE extends RuntimeException {

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值