20175320 2018-2019-2 《Java程序设计》第6周学习总结
20175320 2018-2019-2 《Java程序设计》第6周学习总结
教材学习内容总结
- 本周学习了教材的第七及第十章的内容。在这两章中介绍了接内部类与异常类以及输入、输出流,第七章着重讲了如何在内部类的基础上实现匿名类,如何用自定义的异常类来处理程序运行时发生的异常情况。第十章着重讲了文件的创建与操作以及如何利用各种输入输出流来对文件进行操作。
第七章总结: - 内部类和外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法;内部类的类体中不可以声明类变量和类方法。外嵌类的类体中可以用内部类声明对象;内部类仅供它的外嵌类使用。
- 内部类可以被修饰为static内部类,其他类可以使用static内部类来创建对象,但static内部类不能操作外嵌类中的实例成员变量,非内部类不可以是static类。
- 匿名类即可在不声明对象名的情况下创建一个对象。
- Java使用throw关键字抛出一个Exception子类的实例表示异常发生,教材介绍了自带的异常类NumberFormatException和IOException。
- Java将可能出现的异常操作放在try部分,将发生异常后的处理放在catch部分,catch参数中的异常类都是Exception的某个子类。
- Java使用关键字assert声明一条断言语句,调试程序时可以使用-ea启用断言语句。
第十章总结: - 输入流的指向称为它的源,程序通过输入流读取源中的数据,输出流指向目的地,程序通过输出流把数据传送到目的地。
- File类的对象主要用来获取文件本身的一些信息以及创建目录,不涉及对文件的读写操作,如果File对象是一个目录,那么该对象可调用方法来列出目录下的文件和子目录以及目录下指定类型的文件。
- 方法createNewFile可以创建一个目录中没有的文件,delete方法可以删除当前文件
- 在使用字节输入输出流时一定要在try块部分创建输出流,在catch块部分检测并处理这个异常,调用close()方法可以保证操作系统把缓冲区的内容写到目的地。
- 在Writer流中,write方法将数据首先写入到缓冲区,每当缓冲区溢出时,缓冲区的内容被自动写入到目的地,如果关闭流,缓冲区的内容会立刻被写入到目的地。流调用flush()方法可以立刻冲洗当前缓冲区。
- 缓冲流的源和目的地必须是字符输入流和字符输出流,缓冲流是上层流,它们指向的字符流称为底层流。
- 随机流既可读也可写,但需要在非ASCII字符的文件中进行重新编码。
- 数组流的源和目的地是计算机内存。
- 数据流允许程序按着机器无关的风格读取Java的原始数据,需要底层流。
- 对象流可将一个对象写入到一个文件或读取一个对象到程序中,当使用对象流写入或读入对象时,要保证对象是序列化的。。
- 对象流将数组流作为底层流就可以将对象的序列化信息写入内存。
教材学习中的问题和解决过程
本周的学习内容并不算难度很高,在学习过程中没有什么困难,但是相关类以及方法较多且较繁杂,需要时间去熟悉和理解。
代码调试中的问题和解决过程
- 问题1:运行第十章的第三个程序时发生如图错误:

- 问题1解决方法:发现是在虚拟机中没有该目录,于是修改代码第五行的文件目录。
- 问题2:运行第十章第六个程序时发生如图错误:

- 问题2解决方法:发现是没在源程序的目录中创建"a.txt"文件。
代码托管

上周考试错题总结
- 上周测试中无错题。
其他(感悟、思考等,可选)
Java是一门比较复杂的语言,它为了实现功能而产生了很多类和方法,如何熟悉并正确地使用这些类和方法应该是我今后努力的方向。教材的各个各个章节联系紧密,经常需要联系前面的章节,而前面章节不清楚的地方要看到后面才能明白,而这次项目的内容我也用到了教材中提供的代码,这提示我们对教材要有相当高的熟练度,要多看教材。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第六周 | 1994/5253 | 3/10 | 25/132 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
- 计划学习时间:20小时
- 实际学习时间:20小时
- 改进情况:多看看现代软件工程 课件 软件工程师能力自我评价表
参考资料
20175320 2018-2019-2 《Java程序设计》第6周学习总结的更多相关文章
- 学号 20175212 《Java程序设计》第九周学习总结
学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
- 《Java程序设计》第九周学习总结
20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...
随机推荐
- Java 多线程总结
昨天熬了个通宵,看了一晚上的视频,把java 的多线程相关技术重新复习了一遍,下面对学习过程中遇到的知识点进行下总结. 首先我们先来了解一下进程.线程.并发执行的概念: 进程是指:一个内存中运行的应用 ...
- java反射常用类
测试实体类 public class TestClass { public String classInfo; public String getClassInfo() { return classI ...
- mysql 时间格式转换
1.varchar 转 datetime 格式 DATE_FORMAT(time,'%Y-%m-%d %H:%m:%s'); 2.时间减去一小时 DATE_FORMAT(date_add(time ...
- 五子棋.html
二维数组的定义 , canvas对象的使用 二维数组:以下用new,其实简化 [] 即可, var tArray = new Array(); //先声明一维 for(var k=0;k<i;k ...
- Django之Cookie和Session
http://www.cnblogs.com/liwenzhou/p/8343243.html 一.Cookie Cookie是什么? 就是保存在客户端浏览器上的键值对. Cookie为什么存在? 因 ...
- [好文mark] 深度学习中的注意力机制
https://cloud.tencent.com/developer/article/1143127
- 华为mate10 UA
Dalvik/2.1.0 (Linux; U; Android 9; ALP-AL00 Build/HUAWEIALP-AL00) "user-agent": "Mozi ...
- 008_ssl Certificate Pinning
证书锁定Certificate Pinning技术 在中间人攻击中,攻击主机通常截断客户端和服务器的加密通信.攻击机以自己的证书替代服务器发给客户端的证书.通常,客户端不会验证该证书,直接接受该证书, ...
- 用WKWebView 截取整个Html页面
以前使用UIWebview时,想截取整个页面,可以调整内部scrollView的frame,之后调用 scrollView的layer的 render 方法,很方便. 但是在WKWebView上,行不 ...
- js小方法,获取知道公历生日 (‘1992-01-19’),获取阴历生日日期,属相,非简单根据年份判断-----------声明:整理自网络!!
let lunar = { tg: '甲乙丙丁戊己庚辛壬癸', dz: '子丑寅卯辰巳午未申酉戌亥', number: '一二三四五六七八九十', year: '鼠牛虎兔龙蛇马羊猴鸡狗猪', mont ...