1.有哪些异常:
异常:编译期异常,运行期异常
2.try-catch-finally:
1.多个异常即多重catch块:
1.执行:
不一定只有一个异常啊,but,当try中捕获到某个异常,会跳转到与之匹配的catch块,菀菀类卿,只取其一,最终只会执行一个catch块。
无论是否执行catch中语句,finally都会执行。但当catch,finally中都有return语句时,执行结果是什么呢:
catch(){
System.out.println("💴");return 1;}
finally{
return 0;}
结果显示:
💴;
return 0;
catch(){
System.out.println("💴");return 1;}
finally{
}
结果显示:
💴;
return 1;
2.书写:
常见的catch块最先写
finally中也可用try-catch
2.eg:java与数据库连接对数据进行操作:
1.操作包括:连接-查询-增删改查前避免注入式攻击
避免注入式攻击:什么是SQL注入攻击-CSDN博客
2.进行增删改查的流程:
自动提交-手动提交-可能的异常:
classnotfoundexception
sqlexception-回滚
-rs,conn的关闭可以省略
finally语句:
finally { try { if (rs != null) { rs.close(); } if (conn != null) { conn.close(); } if (sm != null) { sm.close(); } } catch (SQLException e) { e.printStackTrace(); } }
3.throws:
不方便在函数内部处理异常,可把异常外传递
public static void main()throws ...
public void 函数名()throws...