从大体来分异常为两块:

1、error---错误 : 是指程序无法处理的错误,表示应用程序运行时出现的重大错误。例如jvm运行时出现的OutOfMemoryError以及Socket编程时出现的端口占用等程序无法处理的错误。

2、Exception --- 异常 :异常可分为运行时异常跟编译异常

  • 1)运行时异常:即RuntimeException及其之类的异常。这类异常在代码编写的时候不会被编译器所检测出来,是可以不需要被捕获,但是程序员也可以根据需要进行捕获抛出。常见的RUNtimeException有:NullpointException(空指针异常),ClassCastException(类型转换异常),IndexOutOfBoundsException(数组越界异常)等。
  • 2)编译异常:RuntimeException以外的异常。这类异常在编译时编译器会提示需要捕获,如果不进行捕获则编译错误。常见编译异常有:IOException(流传输异常),SQLException(数据库操作异常)等。

3、java处理异常的机制:异常总是先被抛出,后被捕捉的。

在进行程序开发的过程中,自定义异常遵循以下四个步骤:

1)首先创建自定义异常类,语法格式:自定义异常类名 extends Exception。

    2)在方法中通过关键字throw抛出异常对象。

    3)若是在当前抛出异常的方法中处理异常,可以用try-catch语句捕获并处理;若不是,在方法的声明处通过关键字throws指明要抛出给方法调用的异常。

    4)在出现异常方法的调用中捕获并处理异常。

4、throw  和 throws 区别 :

1)throw : throw表示此处抛出一个已定义的异常(可以是自定义需继承Exception,也可以是java自己给出的异常类)

2)throws :   throws表示一个方法声明可能抛出一个异常

5、捕获异常:

首先java对于异常捕获使用的是try---catch或try --- catch --- finally 代码块,程序会捕获try代码块里面的代码,若捕获到异常则进行catch代码块处理。若有finally则在catch处理后执行finally里面的代码。(finally 代码块中的代码无论是否执行了 catch代码块都会被执行)

使用异常类的 printStack() 方法来获取堆栈信息

请忽略类名大小写问题

注意:异常和错误的区别:异常能被程序本身可以处理,错误是无法处理。

自定义异常 extends Exception相关推荐

  1. java自定义异常(Exception、throws、try-catch)

    一.What is ... 异常处理就是容错处理机制.通过构造一个陷阱来捕获运行时的可预见错误,经对该错误进行适当处理后,让程序能继续运行不至于崩溃. 二.Who will ... 异常由系统环境引发 ...

  2. think in java 的目录(转)

    think in java 的目录(转) 1.2: 复用某个类,直接使用该类的一个对象 1.3: 使用现有的类合成一个新类称为组合.动态发生称为聚合 1.4: 组合→拥有 汽车◆▬引擎 1.5: 处处 ...

  3. java自定义事件案例_Java Custom Exception Example(Java自定义异常案例)

    In this example we will look briefly(短暂的) at the basics of Exception, in Java Programming Language. ...

  4. java extends runtimeexception_Java中RuntimeException和Exception的区别

    1. 引入RuntimeException public class RuntimeException { public static void main(String[] args) { // TO ...

  5. java 自定义的异常类_java Exception 自定义异常类

    创建自定义的异常类需要继承自Exception类,并提供含有一个String类型形参的构造方法,该形参就是一场的描述信息,可以通过getMessage()方法获得.例如: public class N ...

  6. throws throw 自定义异常

    我们知道当程序遇到异常时除了用try-catch-finally来捕获异常外,还可以用throws和throw去抛出异常,使用异常处理可以定位问题所在处,方便修改程序代码: 例如利用try-catch ...

  7. java培训教程分享:Java中用户如何自定义异常?

    我们在学习java技术的时候应该有了解过,在java中是定义了很多的异常类的,虽然这些大量异常类可以帮助我们描述编程时出现的大部分异常情况,但是在程序开发中有时可能需要描述程序中特有的异常情况,例如在 ...

  8. java输入字符串异常_设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为“XYZ”。。。...

    设计一个 Java 程序,自定义异常类,从命令行(键盘)输入一个字符串,如果该字符串值为"XYZ",则抛出一个异常信息"This is a XYZ",如果从命令 ...

  9. 自定义异常类: 运行期间跟编译期间的区别

    1.自定义异常一: 继承RuntmeExcepyion,即运行期间异常;         由于我们自定义的是运行期间的异常,我们抛出异常,程序始终不作处理,程序编译的时候不会报错,但是运行的时候会报错 ...

  10. java项目怎么定义异常_在Java项目中如何实现自定义异常

    在Java项目中如何实现自定义异常 发布时间:2020-11-11 15:41:32 来源:亿速云 阅读:77 作者:Leah 这篇文章将为大家详细讲解有关在Java项目中如何实现自定义异常,文章内容 ...

最新文章

  1. 深入实践Spring Boot3.1 模型设计
  2. 查询进程并杀死该进程
  3. 阿里数加大数据平台发布,将培养5万大数据科学家
  4. Vue.js 2.6尝鲜
  5. Gradient Boosting算法理论
  6. 【c语言】背包问题的贪心法
  7. app运营推广投放策略
  8. Matlab闪退打不开解决方法
  9. 使用python创建数组的方法
  10. 积木游戏(java)
  11. 中国计算机展望未来,作文:展望未来中国的2025
  12. 【第一章:技术面试通用必备技能】第2节:业务逻辑面试和HR面试
  13. HALO:用于MR扫描器中实时头部对准的工具
  14. k8s dns 无法解析
  15. HI618E音频解码芯片
  16. uni-app打包后ios证书申请和ios应用市场发布(windows主机发布)
  17. iOS远程推送原理及实现过程
  18. 实战小项目_猜数字小游戏
  19. 【一致性仿真】Consensus of second-order heterogeneous multi-agent systems with and without input saturation
  20. AP2403宽输入5——100V降压恒流车灯IC,内置MOS带短路保护功能

热门文章

  1. Windows下CURL编译 支持HTTPS
  2. 2019_WWW_Graph Neural Networks for Social Recommendation
  3. 人工智能的目标与进化
  4. 2018-09-26工作日报
  5. qcloud php开发,GitHub - QcloudApi/qcloudapi-sdk-php
  6. stm32f4有重映射么_STM32单片机重映射USART设计
  7. 【密码学基础】06 高级加密标准AES
  8. 聚簇索引,非聚簇索引
  9. 解决You must configure either the server or JDBC driver (via the serverTimezone conf)
  10. 简单制作登录注册页面