我们平常说的异常是指Exception 因为这类异常一旦出现 我们就是对代码进行更正 修复程序
异常(Exception)的分类:根据在编译时期还是运行时期去检查异常
编译时期异常:checked异常 在编译时期 就会检查 如果没有处理异常 则编译失败(如日期格式化异常)
运行时期异常:runtime异常 在运行时期 检查异常 在编译时期 运行异常不会编译器检测(不报错)(如数学异常)
异常就相当于程序得了一下小毛病 将异常处理掉 程序可以继续执行(吃点药)
Error:错误
错误就相当于程序得了一个无法治愈的毛病(非典,艾滋) 必须修改源代码 程序才能继续执行
编译异常举例:
这样写的就会有一条红线 这就是编译异常 如果遇到这样的异常有两种方法解决这个问题
第一种:
throws:让虚拟机去解决这个问题
虚拟机解决问题的方法就是停止 如果出现错误虚拟机就会停止 将报错信息打印到控制台
如:
运行结果:
第二种方式:使用try{}catch(异常类型){}处理异常
代码:
可以这样写:
运行结果:
这样就是自己选择这么处理
运行期异常:
代码:
运行结果:
这种也有两种办法解决
第一种方法解决:严谨
在你编写程序的时候一定要严谨 严格且谨慎
第二个方法解决 try{}catch(){}
代码:
运行结果:
错误Error代码演示
代码:
运行结果:
内存溢出的错误 创建的数组太大 超出了给JVM分配的内存
处理方式:修改代码 严谨
在你编写程序的时候一定要严谨 严格且谨慎
标签:代码,分类,编译,异常,虚拟机,运行,时期 来源: https://www.cnblogs.com/aimz01/p/16458771.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。