@@ -354,40 +354,56 @@ try {
354354 } catch (Exception e) {// 捕获的异常,类型要匹配
355355 e. printStackTrace();// 打印异常堆栈信息 异常处理完,后面的代码才会执行
356356 }finally {// 一定执行的代码
357- }
357+ }
358358```
359359
360- 使用try-catch处理编译时异常时,在编译时不会报错,但在运行时依旧会报错。运行时异常即使try-catch之后依旧会爆红,还是会修改代码,编译时也看不出,所以对弈编译时异常一定要考虑异常处理。
360+ 使用try-catch处理编译时异常时,在编译时不会报错,但在运行时依旧会报错,比如捕捉io异常 。运行时异常即使try-catch之后依旧会爆红,还是会修改代码,编译时也看不出,所以对弈编译时异常一定要考虑异常处理,比如空指针异常 。
361361
362362+ finally(一定会被执行的)
363- 即使catch中出现异常或有return,try中有return,finally一定在return前执行一次;
364- 像数据库连接、输入输出流和socket需要手动的资源释放(释放是因为有cpu资源占用或泄漏风险),一般在finally中声明
363+
364+ ``` java
365+ try {
366+ testException1. testEx();// 可能出现的异常
367+ return ;
368+ } catch (Exception e) {// 捕获的异常,类型要匹配
369+ e. printStackTrace();// 打印异常堆栈信息 异常处理完,后面的代码才会执行
370+ return ;
371+ }finally {// 在return之前一定执行的代码
372+ }
373+ ```
374+
375+ 即使catch中出现异常或有return,try中有return,finally一定在return前执行一次;
376+ 像` 数据库连接 ` 、` 输入输出流 ` 和` socket ` 需要手动的资源释放(释放是因为有cpu资源占用或泄漏风险),一般在finally中声明
365377
366378#### 5.3.2 throws+异常类型
367379
368380狼来了要吃羊,但此时狼比较狡猾,则把狼往山下抛给村里其他人解决。异常搞不定,把异常往上抛throws,因为是类继承,一直往上抛,如果还是处理不了,就会挂掉。
369381
370382向上抛,交给上层处理,并没有解决掉,只有try-catch会处理掉
371383
372- 为什么要向上抛出,抛出就行吗
384+ * throw
385+ 表明在方法内抛出某种异常
386+ 执行throw语句时后面的语句不再执行
387+
388+ ## 6 序列化与反序列化
373389
374- throw 和 throws
390+ ### 6.1 为什么需要序列化
375391
376- try catch finally
392+ 当JavaBean需要在 ` 网络上传输 ` 或 ` 存储 ` (比如持久化到磁盘)时就会用序列化,是将对象转换成字节流文件(io)就是序列化,反序列化是将流文件还原成对象。
377393
378- try catch finally 使用场景
379- 全局异常处理 有哪些异常处理类
394+ ### 6.2 序列化方式
380395
381- 异常抛出后 程序还能执行吗
396+ * 实现Serializable 接口
397+ * 实现Externalizable 接口
382398
383- ## 6 序列化与反序列化
384399
385- 为什么需要序列化
400+ [ (2 封私信 / 2 条消息) Java序列化有什么作用?序列化与不序列化有什么区别? - 知乎 (zhihu.com) ] ( https://www.zhihu.com/question/26475281 )
386401
387402继承类 可以继承序列化
388403
404+ 什么是default方法?
389405
390- 什么是default方法? https://zhuanlan.zhihu.com/p/33411641#:~:text=%E5%A6%82%E6%9E%9C%E4%B8%80%E4%B8%AA%E6%96%B9%E6%B3%95%E5%9C%A8%E5%A4%9A%E4%B8%AA%E6%8E%A5%E5%8F%A3%E4%B8%AD%E9%83%BD%E6%9C%89%E5%A3%B0%E6%98%8E%EF%BC%8C%E9%82%A3%E4%B9%88%EF%BC%8C%E4%BB%BB%E4%BD%95%E4%B8%80%E4%B8%AA,default%20%E5%AE%9E%E7%8E%B0%E9%83%BD%E4%B8%8D%E4%BC%9A%E8%A2%AB%E7%BB%A7%E6%89%BF%EF%BC%8C%E4%BD%A0%E5%B0%86%E4%BC%9A%E5%BE%97%E5%88%B0%E4%B8%80%E4%B8%AA%E7%BC%96%E8%AF%91%E6%97%B6%E9%94%99%E8%AF%AF%E3%80%82
406+ https://zhuanlan.zhihu.com/p/33411641#:~:text=%E5%A6%82%E6%9E%9C%E4%B8%80%E4%B8%AA%E6%96%B9%E6%B3%95%E5%9C%A8%E5%A4%9A%E4%B8%AA%E6%8E%A5%E5%8F%A3%E4%B8%AD%E9%83%BD%E6%9C%89%E5%A3%B0%E6%98%8E%EF%BC%8C%E9%82%A3%E4%B9%88%EF%BC%8C%E4%BB%BB%E4%BD%95%E4%B8%80%E4%B8%AA,default%20%E5%AE%9E%E7%8E%B0%E9%83%BD%E4%B8%8D%E4%BC%9A%E8%A2%AB%E7%BB%A7%E6%89%BF%EF%BC%8C%E4%BD%A0%E5%B0%86%E4%BC%9A%E5%BE%97%E5%88%B0%E4%B8%80%E4%B8%AA%E7%BC%96%E8%AF%91%E6%97%B6%E9%94%99%E8%AF%AF%E3%80%82
391407
392408public default 的权限访问 为什么不一致
393409接口的
@@ -397,26 +413,29 @@ Result<Integer> save(Entity var1);
397413
398414这个会被继承吗
399415
400-
401416类或接口如果不写public、private、default等访问权限 那么是默认什么权限?
402417
403-
404418匿名内部类https://blog.csdn.net/qq_34944851/article/details/51449420
405419
406420内部类就是innerclass
407421https://www.cnblogs.com/wuhenzhidu/p/anonymous.html
408422
409-
410-
411423那些是类或接口必须继承的方法
412424那些是类必须是实现的方法
413425接口也可以实现方法,然后类是否能够重新实现方法
414426
415427位运算的使用场景
416428https://blog.csdn.net/qq_39314099/article/details/110482069
417429
418-
419430import 导入机制
420431
432+ [ Java import的机制_chentong_zhanran的博客-CSDN博客] ( https://blog.csdn.net/chentong_zhanran/article/details/7270847 )
433+
434+
421435jar是怎么命名的
422436
437+ 不同的module引入类需要导入依赖吗
438+
439+ [ (2 封私信 / 2 条消息) JavaGuide - 知乎 (zhihu.com)] ( https://www.zhihu.com/people/javaguide )
440+
441+ > 学习方式:b站与百度
0 commit comments