20145315 《Java程序设计》第五周学习总结
2016-04-03 23:48
183 查看
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操作类
HashMapTreeMap
Properties
教材学习中的问题和解决过程
没有什么问题。。。代码调试中的问题和解决过程
本周代码托管截图
加入小组应该就不用放截图了吧其他(感悟、思考等,可选)
感觉现在还是跟着书上走,照着书上的代码打,虽然能看懂,但是完全不会自己编。学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第五周 | 1000/1000 | 1/1 | 40/40 |
参考资料
Java学习笔记(第8版)《Java学习笔记(第8版)》学习指导
...
相关文章推荐
- 20145203盖泽双 《Java程序设计》第五周学习总结
- eclipse m2eclipse 从Maven的本地库中读取依赖库
- spring-aop
- 20145316许心远《Java程序设计》第5周学习总结
- 20145337 《Java程序设计》第五周学习总结
- 20145219 《Java程序设计》第05周学习总结
- java——异常
- Jvm垃圾回收器详细
- Struts文件上传下载
- 20145214 《Java程序设计》第5周学习总结
- Java---设计模块(值对象)
- Java---设计模块(值对象)
- java求学之路
- 《JAVA与模式》之装饰模式
- java中的内部类总结
- java多线程编程(一基础概念)
- 成功build Maven但eclipse中依然显示该工程有错误
- Java中的线程Thread方法之suspend()和resume()
- 《JAVA与模式》之策略模式
- Java集合框架