异常产生的原因

因为硬件缺失,程序不够严谨,必须的内容缺失导致的程序问题称为异常 类似与人生病

异常的分类

Throwable Error: 证明硬件出现问题,不处理

常见的错误:

OutOfMemoryError:内存溢出异常,可以通过程序优化解决.现在的计算机一般很少见到此异常

Exception: 因为程序语法错误或思考不足导致的

检查时异常:CheckedException 处理方法:修改代码,正确书写语法格式

运行时异常:RuntimeException 处理方法:通过判断等类似方案处理

常见的运行异常

NullPointerException:空指针异常

ArrayIndexOutOfBoundsException:

数组下标越界异常

ClassCastException:类型转换异常

ArithmeticException:算数异常

了解异常

诞生原因:

1,调用的方法声明了异常

2,因为程序思考不足导致的

3异常的传递: 在A方法中调用B方法,在B方法调用C方法...X方法 如果x方法出现异常会导致向上传递

JVM对异常的处理方案: 让程序闪退 所以不要将异常留给JVM解决

处理异常

核心目的:保证程序不要闪退,可以正常运行

方案: 1,捕获异常处理异常

语法:try{ 有可能出现异常的代码 }catch(异常种类1 变量名){ 异常种类1的处理方案 }catch(异常种类2 变量名){ 异常种类2的处理方案 } ... catch(异常种类n 变量名){ 异常种类n的处理方案 }finally{ 必须要执行的代码 }

catch:必须有一个

finally:可有可无

catch:多个异常,先子后父

2,声明异常

关键字:throws

使用位置: 方法上,形参之后,方法体之前

注意:可以一次声明多个异常

3,抛出异常

关键字:throw

使用位置: 方法中

语法: throw 异常类对象;

建议:使用throw时,必须配合throws

自定义异常

步骤: 1,创建一个类 2,继承与异常类 3,定义无参构造,定义有参构造

学习java的第15天之 异常相关推荐

  1. 【深入理解Java虚拟机学习笔记】第二章 Java 内存区域与内存溢出异常

    最近想好好复习一下java虚拟机,我想通过深读 [理解Java虚拟机 jvm 高级特性与最佳实践] (作者 周志明) 并且通过写一些博客总结来将该书读薄读透,这里文章内容仅仅是个人阅读后简短总结,加强 ...

  2. 学习-Java异常处理之try-catch之异常捕获

    第1关:学习-Java异常处理之try-catch之异常捕获 任务描述 相关知识 什么是异常 非运行时异常 运行时异常 错误 捕获异常 异常的使用原则 编程要求 测试说明 任务描述 本关任务:求给定两 ...

  3. java 异常_学习Java,你需要知道这些Java异常

    文章目录 异常处理的概念 异常的基本概念 Java异常处理机制的优点 错误的分类 异常的分类 预定义的一些常见异常 异常的处理 抛出异常 捕获异常的语法 生成异常对象 声明自己的异常类 异常处理的概念 ...

  4. Java架构师笔记-你必须掌握学习Java需要掌握哪些技能

    闲来无事,师长一向不(没)喜(有)欢(钱)凑热闹,倒不如趁着这时候复盘复盘.而写这篇文章的目的是想总结一下自己这么多年来使用java的一些心得体会,希望可以给大家一些经验,能让大家更好学习和使用Jav ...

  5. java编程学习方法_在线学习Java编程的最佳方法

    java编程学习方法 1.简介 Java是使用最广泛的编程语言之一. 根据Github的最新报告 ,Java被列为仅次于JavaScript的第二大最常用的编程语言. 掌握Java的人有很多话题. 好 ...

  6. 在线学习Java编程的最佳方法

    1.简介 Java是使用最广泛的编程语言之一. 根据Github的最新报告 ,Java被列为仅次于JavaScript的第二大最常用的编程语言. 掌握Java的人有很多话题. 好消息是,您可以在线找到 ...

  7. 学习Java: Queue

    15 08, 2007 学习Java: Queue Java - 作者 zybing @ 15:17 Java提供了Quere,相当好用,在1.5版本中又有增强. Queue: 基本上,一个队列就是一 ...

  8. 秋招来袭,想学习Java进大厂的小伙伴,这7点武林秘籍一定要点开看看!(附一线互联网大厂MySQL面试高频考点)

    转眼间六月已经过了十天了.六月虽是盛夏,但秋招也不远了.提早做好准备才能在实战中游刃有余. 今天整理更新一篇Java学习分阶段路线攻略.希望能给大家一些启发,找到一条属于自己的学习线路. 本文为转载. ...

  9. 即将实习的应届毕业生 学习java SpringMVC 数据库 知识总结

    即将实习的应届毕业生 学习java SpringMVC 数据库 知识总结 1.Java语言的优点: 1)Java是纯面向对象语言 2)与平台无关性,一次编译到处运行 3)Java提供了狠多内置类库 4 ...

最新文章

  1. OpenCV中的快速特征检测——FAST(Features from Accelerated Segment Test)
  2. 一不小心又把应用发挂了,复盘一下这十几分钟的黑暗时刻
  3. Oracle学习笔记:redo重做日志
  4. 四、MapReduce和Yarn基本架构
  5. 纽约大学计算机和信息科学专业排名,纽约大学计算机科学与信息系统世界排名2018年最新排名第33(QS世界排名)...
  6. 目前我们再用的即时通讯软件
  7. 信息学奥赛一本通 1145:字符串p型编码 | OpenJudge NOI 1.7 31:字符串p型编码
  8. com.jacob.com.ComFailException: Can‘t get object clsid from progid
  9. OpenCvForUnity人脸识别插件动态创建面部特征点Unity换脸
  10. Ubuntu14.04安装文泉驿字体
  11. C4D动力学边界是什么意思?
  12. java 输入输出_java基本输入输出小结
  13. Linux内核中C语言使用特点和技巧
  14. 代理是什么及如何使用
  15. 国标28181:什么是SIP协议
  16. 广西省桂林市永福县,县城游记
  17. 本周 GitHub 速览:自动化当道,破密、Python爬虫各凭本事
  18. 700MHz让中国移动成为最优秀的5G运营商,联通和电信难匹敌
  19. windows下创建文件的快捷方式
  20. 宽带射频放大器OA4SMM4(1)

热门文章

  1. 中国手机在印度市场出货量猛增,其他手机企业继续萎缩
  2. 整理Python常用库,看看哪些用过的?
  3. ESP32-C3通过ArduinoIDE实现支付宝签名算法RSA2(SHA256withRSA)
  4. 给大家收集了一些C语言代码优化的方法
  5. 高压放大器在驱动压电陶瓷进行铝板无损检测中的应用研究
  6. 高通modem和linux区别,qualcomm qmi(modem-linux通信)
  7. java基础和答案_Java基础试题和答案.doc
  8. Mint建站指北其之终 终篇 吹响吧上低音号
  9. 将数组分成两部分,使这两部分和的差最小
  10. NBA名人堂之-查尔斯·巴克利|里克·巴里|罗伯特·帕里什|斯科蒂·皮蓬|戴夫·德布斯切尔