20145315 《Java程序设计》第五周学习总结
20145315 《Java程序设计》第五周学习总结
教材学习内容总结
第八章
8.1语法与继承架构
8.1.1使用try,catch
所有的错误都会被打包为对象,使用try,catch可以对错误进行一些后期处理,使得错误发生时显示更友好的错误信息。
如果发生错误,执行流程会跳离错误发生点,然后比较catch中声明的类型,如果符合就执行catch中语句。
8.1.2异常继承架构
错误的对象继承java.lang.Throwable类,Throwable有两个子类Java.lang.Error与java.lang.Exceptions.
Erroe与其子类实例代表严重系统错误。
Exception与其子类实例是异常处理。必须明确使用try,catch语法加以处理,或者用throw声明这个方法会抛出异常,否则会编译失败。
受检异常:一定要处理Exception,但不属于RuntimeException.
非受检异常:程序不强迫处理。RuntimeException是客户端引发的,属于客户端有关修改的内容,如果一定要处理,建议是呈现友好信息。
注意:如果父类异常对象在子类异常对象前被捕捉,则catch子类异常对象区块将永远不会被执行。所以要先捕捉子类。
多重捕捉语法:区块内容重复时使用。(不得有继承)
8.1.3要抓还是要抛
throw:如果抛出受检异常,但是以面前信息无法处理异常,可有客户端依据当时调用的环境信息进行处,使用throw声明。
如果是非受检异常,应该改善程序逻辑来避免引发错误。
在catch区块中进行完部分错误处理以后,可以使用throw将异常再抛出。如果抛出的是受检异常,必须在方法上使用throw声明.
可以使用异常继承,子类可以重新定义异常。
8.1.4
Java使用受检异常的目的是文件化和提供编程信息。
8.1.5
若想得知异常发生的根源,以及多重方法调用下的堆栈传播,可以利用异常对象自动收集的堆栈追踪来取得相关信息。
printStackTrace()
堆栈信息中显示了异常类型,最顶层的是异常根源,以下是调用的顺序。
如下:
java.lang.NullPointerException
at StackTraceDemo.a(StackTraceDemo.java:20)
at StackTraceDemo.b(StackTraceDemo.java:16)
at StackTraceDemo.c(StackTraceDemo.java:13)
at StackTraceDemo.main(StackTraceDemo.java:7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)java:14)
at StackTraceDemo.main(StackTraceDemo.java:7)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
java.lang.NullPointerException
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
可以使用fillInStackTrace()方法将起点设在重抛异常的地方。
java.lang.NullPointerException
at StackTraceDemo.a(StackTraceDemo.java:26)
at StackTraceDemo.b(StackTraceDemo.java:22)
at StackTraceDemo.c(StackTraceDemo.
at StackTraceDemo.c(StackTraceDemo.java:17)
at StackTraceDemo.main(StackTraceDemo.java:7)
第九章
9.1使用collection与Map
9.1.1认识架构
收集对象时,会依据需求使用不同的接口操作对象。
9.1.2索引List
- ArrayList特性:数组特性
- LinkedList特性:连接结构
9.1.3 Set
若有重复,则不再收集
9.1.4 Queue
收集的对象加入尾端,取得对象时从前端。
9.1.5泛型语法
表示支持泛型
9.1.6简介lambda
键值对应的MAP
根据某个键来取得对应的值
常用MAP操作类
- HashMap
- TreeMap
- Properties
教材学习中的问题和解决过程
没有什么问题。。。
代码调试中的问题和解决过程
本周代码托管截图
加入小组应该就不用放截图了吧
其他(感悟、思考等,可选)
感觉现在还是跟着书上走,照着书上的代码打,虽然能看懂,但是完全不会自己编。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第五周 | 1000/1000 | 1/1 | 40/40 |
参考资料
20145315 《Java程序设计》第五周学习总结的更多相关文章
- 201521123025<java程序设计>第五周学习总结
1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...
- Java程序设计第五周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...
- 20145315 《Java程序设计》第九周学习总结
20145315 <Java程序设计>第九周学习总结 教材学习内容总结 第16章--整合数据库 16.1.1JDBC简介 应用程序通过通信协议对数据库进行指令交换,以进行对数据的的增删查找 ...
- 20145315 《Java程序设计》第二周学习总结
20145315 <Java程序设计>第二周学习总结 教材学习内容总结 类型 类型:整数分为short,int,long形. 字节:长度为一字节. 浮点数:储存小数,float和doubl ...
- 20145315 《Java程序设计》第一周学习总结
20145315 <Java程序设计>第一周学习总结 教材学习内容总结 第一章 java原来以橡树为名,后来才改成java,灵感是咖啡. 作者戏称JDK为java developer ki ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
随机推荐
- Postgresql 创建主键并设置自动递增的三种方法
Postgresql 有以下三种方法设置主键递增的方式,下面来看下相同点和不同点. --方法一create table test_a ( id serial, name character var ...
- MUI 图标筛选切换(父页面传值子页面)
1 父页面: index.html <li class="tab_layout"> <a href="javascript:;" clas ...
- Java 去除List列表中的重复项
/** * Remove list duplicate item * * @param srcList * @return */ private static ArrayList<Resolve ...
- URLSearchParams 接口定义处理 URL 参数串
基本使用方法如下 /* * URLSearchParams属性 * @语法:new URLSearchParams(parameter); */ (function(){ var str = &quo ...
- 结合Ajax做地区内容切换!(城市切换)
实现原理:点击,进行异步保存Cookie , 根据保存的Cookie来切换城市内容: 简单HTML示例: <!doctype html> <html> <head> ...
- linux 统计文件数量
查找当前目录下compose文件的数量 ls -lr | grep "compose" | wc -l
- poj3630 Phone List【Trie树】
Phone List Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 34805 Accepted: 9980 Descr ...
- hdu5542 The Battle of Chibi【树状数组】【离散化】
The Battle of Chibi Time Limit: 6000/4000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Othe ...
- 徐州网络赛G-Trace【线段树】
There's a beach in the first quadrant. And from time to time, there are sea waves. A wave ( xx , yy ...
- LightGBM值参数配置
LightGBM 可以使用一个 pairs 的 list 或一个字典来设置参数: 1.Booster提升器的参数: param={'num_class':33, 'boosting_type':'gb ...