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就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

参考资料

20175320 2018-2019-2 《Java程序设计》第6周学习总结的更多相关文章

  1. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  2. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  3. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  4. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  5. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  6. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  7. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  8. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  9. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  10. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

随机推荐

  1. 20165237 2017-2018-2《Java程序设计》课程总结

    20165237 2017-2018-2<Java程序设计>课程总结 每周作业链接汇总 我期望的师生关系 学习基础和C语言基础调查 Linux安装及学习 第一周学习总结 第二周学习总结 第 ...

  2. 【洛谷P1706全排列问题】

    题目描述 输出自然数1到n所有不重复的排列,即n的全排列,要求所产生的任一数字序列中不允许出现重复的数字. 代码如下: #include<iostream>#include<cstd ...

  3. java PDF2JPG

    import org.apache.commons.lang3.StringUtils; import org.apache.pdfbox.pdmodel.PDDocument; import org ...

  4. installshield安装包制作

    入门教程:http://blog.csdn.net/gaofang2009/article/details/5260065 入门教程:http://blog.csdn.net/plfl520/arti ...

  5. 解决tomcat端口被占用:Port 8005 required by Tomcat v7.0 Server at localhost is already in use

    问题提示8005端口被占用 首先:在cmd下,输入  netstat   -ano|findstr  8005 (什么端口号被占用就输入什么端口号),回车 再输入 taskkill  /pid  20 ...

  6. vue-cli 3.0

    安装 vue-cli 3.0 时报错 vue-cli3安装遇到的问题,卸载不掉旧版本,导致更新不了 vue-cli 2.9.6 版本卸载不了 作者:Runner_leaf链接:https://www. ...

  7. Python3 元组(tuple)

    一.定义:不可变序列的数据元素集合,元组的元素是不可以修改的 元组使用小括号,例如:tuple = (1,) 注意:即使元组里面只有一个元素,该元素后面也要加 ",":在函数传递参 ...

  8. jmeter测试wordpress使用base64进行鉴权

    1.下载插件 对密码进行加密 2.安装插件 3.使用插件 4.使用base64对上面获取到的密码进行二次加密 echo -n "用户:密码" | base64 将以上命令键入lin ...

  9. 微信小程序换皮肤,动态切换菜单栏和导航栏的样式,动态修改TabBar和NavigationBar

    在做微信小程序换皮肤的时候,需要动态修改菜单栏(TabBar)和导航栏(NavigationBar) 但是在小程序中它们的样式是写在app.json里面,而且app.json是静态编译,运行时哪怕你修 ...

  10. xilinx和altera的fpga的不同之处!----如果不知道,你将为之付出代价! --转载

    本人从2004年接触fpga开始,至今已经8年了.开发过altera的flex系列和cyclone3系列:开发过xilinx的vii和v5系列.下面谈谈本人对二者的一些不同,以便引起开发者对一些细节上 ...