20165235 2018-3 《Java程序设计》第5周学习总结

20165235 2018-3 《Java程序设计》第5周学习总结

教材学习内容总结

第六章 内部类与异常类
  • (一)内部类:1.java支持在一个类中定义另一个类,这个类叫内部类。2.内部类的类体中不可以声明类变量和类方法。2.外嵌类的类体中可以使用内部类声明对象,作为外嵌类的成员。4.内部类如果用static修饰,那么它作为外嵌类的一个静态数据。
  • (二)1.匿名类一定是内部类。2.匿名可以继承父类的方法,也可以重写父类的方法。3.匿名类在创建对象时要直接使用父类的构造方法。
  • (三)1.异常时程序运行时出现的错误,可以使用throws抛出一个Exception子类的实例方法,表示异常发生。2.使用try—catch语句来实现异常类。
  • (四)当时用java解释器直接运行应运程序时,默认地关闭断言,在调试程序的时候可以使用-ea启用断言语句。
第十章 输入输出流
  • (一)1.输入流的指向是源,输出流的指向是目的地。2.java.io提供大量的流类,所有的输入流都是抽象类InputStreamReader的子类。而所有的输出流都是抽象类OutputStreamWriter的子类。3.File的对象主要用来获取文件本身的一些信息,例如文件所在的目的地,文件长度,文件读写权限等。不涉及对文件的读写操作。
  • (二)1.输入流在读完源中数据后要关闭输入流,input.close()而对于输出流同理。
  • (三)writer方法将数据首先写入到缓存中,每当缓存区溢出后,缓冲区的内容被自动写到目的地,如果关闭流,缓冲区的内容会被立即写入到目的地。流调用flush()方法可以立即冲洗缓冲去。
  • (四)源和目的地必须是字符输入输出流。BufferReader流可以读取文本行,方法是readLine()

教材学习中的问题和解决过程

  • 问题1:在教材165页中,在ShowBoard类中,向void showMess()传入的是OutputAlphabet show的引用还是实体。
  • 问题1解决方案:目前没有得到解决。

代码托管1

代码托管2

(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • 错题2:在课本50-51页就有答案,C语言编写代码时不需要考虑机器指令的细节。面向对象语言编写需要消耗更多的内存,所以需要更快的CPU来保证运行。
  • 错题5:对于定义的Lader类的对象,其具有computerArea()和setHeight()两个行为
  • 错误9:带三角的直线是由子类指向父类。
  • 错误10:用类来声明的变量叫做对象。
  • 错误11:如果类中定义一个或多个构造方法,java不提供默认的构造方法。
  • 错误12:String a ="ab"+"cd";是创建了三个对象。
  • 错误18:static修饰的方法是属于类方法,可以直接用类名来调用。
  • 错误20:当实例成员变量的名字和局部变量的名字相同时,不能省略成员变量之前的"this. "static"变量前的类名。
  • 错误22:没有注明包名所以c选项是错的。
  • 错误24:不能用protected和private修饰类名。
  • 错误28:题目中A选项不知道哪里错了,就是两个构造方法。一个是Hello(),另一个是Hello(int m)。

其他(感悟、思考等,可选)

在本周的学习中我了解到了结对学习这一学习方式。对于从未接触过得我来说是一个新的尝试,希望能通过结对学习来提高自己的学习效率。第七章和第十章的内容相对来说是有一点抽象,尤其是第十章,对于学好输入输出流最好的方法就是多操作。经过多次通过输入输出流来读写文件才能提高对代码的理解。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 31/31 1/1 20/20 git的使用
第二周 373/404 2/3 18/38 java基本数据语法
第三周 547/920 1/4 22/60 类与对象以及打包
第四周 919/1839 2/6 30/80 子类与继承,接口和面向接口编程
第五周 500/2300 3/9 20/ 100 输入输出流以及内部类

参考资料

posted @ 2018-04-01 17:00  养浩  阅读(140)  评论(0编辑  收藏  举报