首页 > 编程语言 >java的异常

java的异常

时间:2023-06-04 22:55:28浏览次数:46  
标签:java 抛出 发生 try catch 异常 throws

异常:

  程序中发生的不正常的情况成为异常(语法错误和逻辑错误不是异常)。

异常分为两类:

  1. Error:java虚拟机无法解决的严重问题,程序会崩溃,如栈溢出(stackoverflowerror)、内存不足等

  2. Exception:由于编程错误或外在因素导致的一般性问题,可以使用正对行的代码进行处理,如空指针异常、算数异常。Exception异常也分为两类:

      a. 运行时异常:代码运行时发生的异常

      b. 编译时异常:编程时发生的异常,编译异常必须处理

异常处理:

  当异常发生时,对异常的处理方式,有两种方式:

    1. try-catch-finally

     程序员在代码中捕获发生的异常,并自行处理

     

    2. throws

     将发生的异常抛出,交给调用者(方法)来处理,最顶级的调用者时JVM

     

try-catch-finally处理方式:

  1. 在try中的异常发生了,那么异常发生后面的代码不会被执行,直接进入到catch中

  2. 如果异常没有发生,顺序执行try代码块,不会进入catch

  3. 如果希望不管是否发生异常,都执行某段代码,则使用finally

  4. 可以有多个catch语句,即捕获不同的异常(在不同异常发生时做不同的逻辑),要求catch的子异常在前,父异常在后

   

throws处理方式:

  1. throws是抛出异常,让调用该方法的调用者(方法)处理

  2. throws后面的异常类型可以是方法中产生的异常类型,也可以是它的父类

  3. throws后面可以跟多个异常,用逗号隔开

   

  4. 子类重写父类方法时,对抛出异常的规定:所抛出的异常类型要么和父类抛出异常一致,要么时父类抛出异常类型的子类型

   

标签:java,抛出,发生,try,catch,异常,throws
From: https://www.cnblogs.com/zj-studyrecoding/p/17456608.html

相关文章

  • JAVA动态代理内部实现
    评:一代理设计模式代理模式为目标对象提供一种代理以控制对实际对象的访问。在某些情况下,一个客户不想或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。为了保持行为的一致性,代理类和实际委托类通常会实现相同的接口,所以在访问者看来两者没......
  • 一文吃透Java并发高频面试题
    内容摘自我的学习网站:topjavaer.cn分享50道Java并发高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?嗯,手动创建线程有两个缺点不受控风险频繁创建开销大为什么不受控?系统资源有限,每个人针对不同业务都可以手动......
  • Ubuntu22.04 安装 java JDK
    0前言1下载jdk2.配置环境变量(只修改用户配置)参考0前言Linux一般使用openjdk,其主要由Oracle提供,部分源码不可见一般学习以jdk8为基础.以下教程为jdk8的Linux-Ubuntu的安装教程1下载jdkOracle网站:https://www.oracle.com/java/technologies/downloads/#java8下载后......
  • Java中用于发送HTTP请求的工具类
     HttpClientUtil是Java中用于发送HTTP请求的工具类,它是基于ApacheHttpClient实现的。下面是一个示例代码:importorg.apache.http.HttpEntity;importorg.apache.http.client.entity.UrlEncodedFormEntity;importorg.apache.http.client.methods.CloseableHttpResponse;import......
  • Java中用于发送HTTP请求的工具类
     HttpClientUtil是Java中用于发送HTTP请求的工具类,它是基于ApacheHttpClient实现的。下面是一个示例代码:importorg.apache.http.HttpEntity;importorg.apache.http.client.entity.UrlEncodedFormEntity;importorg.apache.http.client.methods.CloseableHttpResponse;import......
  • Java中用于发送HTTP请求的工具类
    ​ HttpClientUtil是Java中用于发送HTTP请求的工具类,它是基于ApacheHttpClient实现的。下面是一个示例代码:importorg.apache.http.HttpEntity;importorg.apache.http.client.entity.UrlEncodedFormEntity;importorg.apache.http.client.methods.CloseableHttpResponse;......
  • Java中用于发送HTTP请求的工具类
    ​ HttpClientUtil是Java中用于发送HTTP请求的工具类,它是基于ApacheHttpClient实现的。下面是一个示例代码:importorg.apache.http.HttpEntity;importorg.apache.http.client.entity.UrlEncodedFormEntity;importorg.apache.http.client.methods.CloseableHttpResponse;......
  • Java中HttpClientUtil工具类
     HttpClientUtil包含get和post方法。发送HttpPost或HttpGet请求一共三个步骤:1、创建CloseableHttpClient对象,用于执行excute方法2、创建HttpPost或者HttpGet请求对象3、执行请求,判断返回状态,接收响应对象  publicclassHttpClientUtil{/****编码集*/......
  • Java中HttpClientUtil工具类
     HttpClientUtil包含get和post方法。发送HttpPost或HttpGet请求一共三个步骤:1、创建CloseableHttpClient对象,用于执行excute方法2、创建HttpPost或者HttpGet请求对象3、执行请求,判断返回状态,接收响应对象  publicclassHttpClientUtil{/****编码集*/......
  • Java中HttpClientUtil工具类
    ​ HttpClientUtil包含get和post方法。发送HttpPost或HttpGet请求一共三个步骤:1、创建CloseableHttpClient对象,用于执行excute方法2、创建HttpPost或者HttpGet请求对象3、执行请求,判断返回状态,接收响应对象  publicclassHttpClientUtil{/****编码集......