异常的处理、Object非空判断
异常的处理
异常:异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的。
异常处理的关键字:try、catch、finally、throw、throws
* try:里面是可能出现异常的语句或者代码块。后面可以跟一个或多个catch代码段。出现异常,终止try代码段的执行,根据错误的类型找到对应的catch执行。
1. 必须在 try 之后添加 catch 或 finally 块。try 块后可同时接 catch 和 finally 块,但至少有一个块。
2. 必须遵循块顺序:若代码同时使用 catch 和 finally 块,则必须将 catch 块放在 try 块之后。
3.catch 块与相应的异常类的类型相关。
* catch:出现异常该怎么办 (拿到异常一定做出至少一种处理)
try {
// 可能出现异常的代码
} catch (Exception e) {
e.printStackTrace();
}
}
finally:无论是否产生异常都会执行。一般用于资源的清除工作,比如io流的关闭,jdbc的驱动关闭。
try {
// 可能出现异常的代码
} catch (Exception e) {
e.printStackTrace();
}finally {
// 无论是否产生异常都会执行
}
}
* throws:用于方法声明时出抛出
* throw:用于实际手动抛出
public static void getElement(int[] arr, int index)throws Exception{
int x = 1;
if(x == 1)
throw new Exception("手动抛出异常");
}
}
Object非空判断
Object类中静态方法
requireNonNull: 查看指定对象是不是空
案例:
public static void main(String[] args) {
method(null);
}
public static void method(Object o){
// Objects.requireNonNull(o);
Objects.requireNonNull(o,"传递的对象是空的");
}
}
打印输出