Java入门第三季(一、异常与异常处理)
来源:互联网 发布:网络安全法宣传 编辑:程序博客网 时间:2024/04/30 19:59
(一)异常:有异于常态,和正常情况不一样,有错误出现。阻止当前方法或作用域。
throwable:
1、error:(1)虚拟机错误(VirtualMachineError)
(2)线程死锁(ThreadDeath)
2、exception:(1)非检查异常:1)空指针异常(NullPointerException)
2)数组下标越界异常(ArrayIndexOutOfBoundsException)
3)类型转换异常(ClassCastException)
4)算术异常(ArithmeticException)
(2)检查异常:文件异常(IOException)、SQL异常(SQLException)
(二)try…catch...finally实现异常处理
try:抛出异常,抛出异常的方法会终止执行,程序的控制权将被移交给catch块中的异常处理程序。
try{
//一些会抛出异常的方法
}catch(Exception e){
//处理该异常的代码块
}
try:会抛出很多类型的异常
try{
……
}catch(Exception e){
……
}catch(Exception2 e){
……
}…(n个catch块)…{
}
catch语句的循序:先小后大(先子类后父类)
try{
……
}catch(Exception e){
……
}catch(Exception2 e){
……
}…(n个catch块)…{
……
}finally{
//最终将要执行的一些代码
}
(三)异常抛出以及自定义异常
throw:将产生的异常抛出(动作),写在方法体里面,表明抛出的具体异常这个动作
throws:声明将要抛出何种类型的异常(声明)
public void 方法名 (参数列表)throws 异常列表{
//调用会抛出异常的方法或者:
throw new Exception();
}
自定义异常:class 自定义异常类 extends 异常类型{
}
(四)小结一下下~~
1、处理运行时异常时,采用逻辑去合理规避同时辅助try-catch处理;
2、在多重catch块后面,可以加上一个catch(Exception)来处理可能会被遗漏的异常;
3、对于不确定的代码,也可以加上try-catch,处理潜在的异常;
4、尽量去处理异常,切记只是简单的调用printStackTrace()去打印输出;
5、具体如何处理异常,要根据不同的业务需求和异常类型去决定;
6、尽量添加finally语句块去释放占用的资源。
- Java入门第三季(一、异常与异常处理)
- Java入门第三季-1.异常与异常处理
- java:Java入门第三季第四课:异常处理机制
- JAVA异常处理(一)
- java异常处理(一)
- java异常处理(一)
- java异常处理入门
- Java 入门 之 字符串与异常处理
- 5、Java入门—异常与异常处理
- 慕课java第三季-异常与异常处理:借书系统
- java异常与异常处理
- Java异常与异常处理
- Java 异常与异常处理
- Java异常与异常处理
- Java异常处理 一
- java 异常处理(一)
- Java异常处理一
- Java 异常的捕获与处理详解(一)
- Python AttributeError: 'module' object has no attribute xxxx
- 【LeetCode】53. Maximum Subarray
- mircosoft sql server 2012 单表超过255字段导出
- Spring MVC 自学杂记(二) -- 数据绑定之日期转换
- had
- Java入门第三季(一、异常与异常处理)
- JDBC与JNDI
- Linux使用的一些技巧
- [bigdata-025] ubuntu 14.04 下用virtualbox安装ghost xp
- FlowDocument 动态加载并显示Xaml
- windows系统下Unity3d所有常用快捷键
- 端点检测几种方法比较
- Jenkins学习+集成插件
- java设计模式-状态模式State