20162311 2016-2017-2 《程序设计与数据结构》第五周学习总结

20162311 2016-2017-2 《程序设计与数据结构》第五周学习总结

教材学习内容总结

1、类和对象
2、面向对象程序设计的思维方式
3、实例数据与UML类图
4、用private可见性修饰符声明变量,以提倡封装
5、类中方法的具体应用
6、静态变量与静态方法
7、类之间的关系:依赖,聚合和继承
8、this,static关键字的使用
9、如何在自定义的类中设计方法
10、方法重载,程序的测试与调试

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

  • 问题1:教材的代码中出现了之前没见过的运算符“?”和“:”
  • 问题1解决方案:我先查看了书上的附录D,书上注明了这是条件运算符。那么我想这个运算符应当是用来判定某些条件的。于是我猜测书上代码的意思

    意思应当是,判断face和HEADS是否相等,若为真,则把Heads赋给face,否则把Tails赋给face。
    然后我查了一下百度,结果和我想的一样
  • 问题2:什么是void返回值类型?
  • 问题2解决方案:在看教材5.4.4 再次讨论构造方法时,书上说不能给构造方法增加一个void返回值类型,我不理解什么是void返回值,虽然之前写程序第一行主函数都是public static void main。于是我先上网查找相关资料。

    前面说了,构造函数不能有返回值,可既然void返回空值,为什么不行呢?

    原来是规定好的,为了区别构造函数与其他方法。

代码调试中的问题和解决过程

  • 问题1:编写PP5.3时

    我的源代码如下

  • 问题1解决方案:我改了一下代码

    把给face赋值放在了方法里面,就ok了

代码托管


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

上周考试错题总结

  • 错题1:第7题,用int[]声明的数组,元素类型可以是所有基本类型(×)。一个数组被声明为整型数组后,里面的元素只能是整型数。
  • 错题2:第13题,for(int i = 0; i<names.length(); i++)不能遍历数组中的每一个元素。length变量不是一种方法,后面不能有括号。
  • 错题3:第15题,int[] array = new int[25];,array[25] = 2;
    代码会产生运行时错误。该数组最后一个下标为24,运行时会抛出ArrayIndexOutOfBoundsException异常。

结对及互评

点评模板:

  • 博客中值得学习的或问题:
    • 问题解决方法过于简单
  • 代码中值得学习的或问题:
    • 所有代码都在src目录里,不好找。最好每一章创建一个目录,把每章的代码放在各自的目录里
  • 基于评分标准,我给本博客打分:7分。得分情况如下:
  1. 正确使用Markdown语法(1分)
  2. 模板中的要素齐全(1分)
  3. 教材学习中的问题和解决过程(1分)
  4. 代码调试中的问题和解决过程(1分)
  5. 本周有效代码超过300分行(2分)
  6. 结对学习情况真实可信(1分)

点评过的同学博客和代码

  • 本周结对学习情况
    • 20162325
    • 结对学习内容
      • 教材第五章
  • 上周博客互评情况

思考

这周考试有些特别,题目既有英文也有中文,而解析全是英文,为了能看懂错题的解析,我不得不去查那些不认识的英文单词,这在无形之中也是一种积累。而且Java这门语言也涉及到很多英文,特别是一些计算机方面的术语,如果不能掌握这些术语,今后的学习会有一定困难,所以,这样的出题方式对我们来说是有帮助的。

学习进度条

代码行数(新增/累积 博客量(新增/累积 学习时间(新增/累积 重要成长
目标 5000行 30篇 400小时
第一周 113/113 1/1 10/10
第二周 294/407 1/2 15/25
第三周 433/840 1/3 15/40
第四周 1169/2009 2/5 30/70
第五周 825/2834 1/6 15/85
  • 计划学习时间:15小时

  • 实际学习时间:15小时

  • 改进情况:这周只学一章内容,花的时间可能稍微多了点,从下周开始,要试着按照老师的方法,两小时看教学视频,两小时学习教材,用六小时做书上的程序设计题目。当然刚开始不可能那么严格按照计划来,总会有一些问题要花更多的时间,所以只能是尽量往老师的方法靠近,这样也能提高效率。

参考资料

posted @ 2017-04-02 18:57  20162311张之睿  阅读(423)  评论(15编辑  收藏  举报