Java学习笔记22——异常

这篇具有很好参考价值的文章主要介绍了Java学习笔记22——异常。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

异常

异常的概述

Throwable是所有异常和错误的超类
Java学习笔记22——异常

error表示严重的问题,合理的程序不应该试图捕获
Exception表示合理的应用想要捕获的条件

Exception分为RuntimeException非RuntimeException
其中,RuntimeException在编译期间是不检查的,出现问题后需要修改代码
非RuntimeException编译期间必须处理,否则程序不能通过编译,不能正常运行

JVM处理异常的默认方案

如果程序出现了问题,我们没有做任何处理,最终JVM会做默认的处理:把异常的名称,异常原因及异常出现的位置等信息输出在了控制台,程序停止执行

异常处理

try{
	//代码块
}catch(异常类名 变量名){
	//异常处理
}

Throwable的成员方法

Java学习笔记22——异常

编译时异常和运行时异常的区别

编译时异常和运行时异常也称为受检异常非受检异常
所有的RuntimeException极其子类都被称为编译时异常,其他的异常都是编译时异常

编译时异常:必须显示处理,否则程序就会发生错误,无法通过编译
运行时异常:不需要显示处理,也可以和编译时异常一样处理

异常处理throws

格式:

throws 异常类名;//跟在方法的括号后面

throws针对异常无法处理的情况,将异常抛出,不是处理是延迟处理

编译时异常必须要进行处理:有两种处理方案,try…catch…或者throws,如果用throws,将来谁调用谁处理
运行时异常可以不处理出现问题后需要修改代码

自定义异常

public class 异常类名 extends Exception{
	无参构造
	有参构造
}

throws和throw的区别
throws用在方法声明后面,跟的是异常类名;表示抛出异常,由调用者处理;表示出现异常的可能性,并不一定会发生异常
throw在方法体内,跟的是异常对象名;表示抛出异常,由方法体内的语句处理;执行throw一定是抛出了异常文章来源地址https://www.toymoban.com/news/detail-465476.html

到了这里,关于Java学习笔记22——异常的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 避免低级错误:深入解析Java的ConcurrentModificationException异常

    在软件开发中,我们常常会遇到各种错误和异常。其中有一类比较低级但又常见的错误就是 ConcurrentModificationException 异常。最近了我就写了个这种异常,这个异常通常发生在使用迭代器遍历集合时,同时对集合进行修改,从而导致迭代器检测到集合结构发生变化而抛出异常。

    2024年02月15日
    浏览(31)
  • 解决java.lang.StackOverflowError错误(栈溢出异常)

    原因1: 递归导致 , 死循环或者无限循环调用 ,多个实体类之间有多对一、多对多 关系时,重写toString方法的时候一定要注意,不要两个有对应关系的实体类都重写相关联属性字段的toString方法,这样会导致一直递归重写下去,内存当然会被耗尽,导致栈溢出 造成我查你你

    2024年02月05日
    浏览(36)
  • 【Nginx22】Nginx学习:FastCGI模块(四)错误处理及其它

    FastCGI 最后一篇,我们将学习完剩下的所有配置指令。在这里,错误处理还是单独拿出来成为一个小节了,而剩下的内容都放到其它中进行学习。不要感觉是其它的就没用了,有些配置指令还是非常重要的哦,或许正好你现在的项目就能用上呢。 今天学习的内容都是可以设置

    2024年02月10日
    浏览(27)
  • Linux学习笔记——修改文件的所有者和所有组

    Linux chown (英文全拼: change owner )命令用于设置文件所有者和文件关联组的命令。 Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者。利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户 ID,组可以是组名或者组 ID,文件是以空格分开的要改

    2024年02月16日
    浏览(29)
  • Java课题笔记~ SpringBoot概述

    问题导入 学习了SpringBoot入门案例之后,感觉对比SpringMVC哪一个更加方便简洁? SpringBoot是由Pivotal团队提供的全新框架,其设计目的是用来 简化 Spring应用的 初始搭建 以及 开发过程 Spring程序缺点 配置繁琐 依赖设置繁琐 SpringBoot程序优点 自动配置 起步依赖(简化依赖配置)

    2024年02月11日
    浏览(32)
  • Java课题笔记~ Fastjson 概述

    3.3 JSON串和Java对象的相互转换 学习完 json 后,接下来聊聊 json 的作用。 以后我们会以 json 格式的数据进行前后端交互。前端发送请求时,如果是复杂的数据就会以 json 提交给后端;而后端如果需要响应一些复杂的数据时,也需要以 json 格式将数据响应回给浏览器。 在后端我

    2024年02月12日
    浏览(30)
  • 学习笔记22 map

    map的每个元素都由两个部分组成:键和值。每个键都与一个特定的值相关联,并且可以用于定位该值。 map和set很像,只不过map存储的是key,由key再映射到value,而set存储的就是value本身。 Map接口是泛型的,由两个类型变量K和V进行参数化。它们分别代表表示键和值对象的类型

    2024年02月15日
    浏览(21)
  • Docker学习笔记22

    Docker swarm:         Docker swarm 是Docker Host(Docker主机)集群管理工具                 其主要作用是把若干台Docker主机抽象为一个整体,并且通过一个入口统一管理这些Docker主机上的各种Docker资源。Swarm和Kubernetes比较类似,但是更加轻,具有的功能也比Kubernetes更少一些。

    2024年02月13日
    浏览(26)
  • Spring学习笔记之spring概述

    Spring是一个轻量级的控制反转和面向切面的容器框架 Spring最初的出现是为了解决EJB臃肿的设计,以及难以测试等问题。 Spring为了简化开发而生,让程序员只需关注核心业务的实现,尽可能的不再关注非业务逻辑代码(事务控制,安全日志等) 八大模块中有两大核心模块,

    2024年02月14日
    浏览(31)
  • Shader学习笔记:BRDF简单概述

    这篇文章写于一年多以前的一次课程作业,这次作为一个“存货”给放出来,仅仅只是针对代码和一些要点进行简单叙述,如果想听完整的版本,请搜索毛星云大神的博客或者书籍。关于基本的物理渲染公式,网络上的博客和典籍已经多如牛毛了,这里只是自己在之前整理的

    2024年02月04日
    浏览(29)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包