java异常体系

Error(错误)和Exception(异常)

Error由JVM产生抛出的;接触最多的是Exception,他是由于程序抒写有问题抛出

运行时异常(别名:非受检异常)是程序未检测出来的异常,这种错误一般是逻辑上的错误引起的。例如:

非运行时异常(别名:受检异常):从语法角度上必须解决的异常,如果不处理编译不通过。例如:

Thorwable:所有异常的父类

异常的解决方案:

          抛出异常和解决异常

抛出异常:

throws:向外抛出异常,让调用者去解决这个异常

调用者可以选择使用try-catch-finally去解决问题,或者也可以直接抛出

throws:可以抛出多个异常,但是也可以直接抛出一个大异常后Exception

public static void run() throws ClassNotFoundException{ 
   Class clazz = Class.forName("agent");
 }

解决异常:

  1.  try:尝试执行,如果执行成功那么就不会执行catch中的代码,如果执行失败就会执行catch中的代码
  2.  try-catch:如果我们try代码块当中的代码执行失败,不会影响后边的代码执行
  3.  catch(Exception e) ()里面写的是我们当前索要抛出异常的类型,如果不知道代码要抛出什么异常,直接写Exception
  4. finally:try-catch 代码块中一定要执行的代码,一般用来做资源关闭
public class Test {
 public static void main(String[] args) {
 try { int a = 10/0; 
     }catch(Exception e) { e.printStackTrace(); 
      }finally{ }
 System.out.println("+++++++++");
 } 
}

错误不能被以上两种方法解决

自定义异常(throw)

public class Test {
  public static void main(String[] args) throws Exception { 
    run(15); 
} 
    public static void run(int a) throws Exception{
      if(a>10) { throw new Exception("你给我的值大于10"); 
   } 
  } 
}


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值