20182318 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结

20182318 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结

教材学习内容总结

教材4.8.1

迭代器和for循环

  1. Iterable接口
  2. hasNext,next的意义
  3. 迭代器和for的区别

教材第五章内容

  1. 类和对象的确定
  2. 分配职责
  3. 类的定义和构建
  4. 实例数据
  5. UML类图
  6. 聚合
  7. this引用
  8. 方法设计
  9. 方法重载
  10. TDD方法

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

问题1:何为封装

问题1解决方案:就是将方法改为私有,不是公共

问题2:由于对toString方法的不理解,导致在编写代码过程中也出现了乱码

问题2解决方案:经过上网查资料弄清楚了解析如下
如果一个java对象改写了toString方法,就不会打印出内存地址,而是直接调用了他的toString方法。

问题3:this的引用

问题3解决方案:

  • 使用this来区分当前对象
  • 在构造器中使用this来调用对象本身的其他构造器
  • this关键字还有一个重大的作用就是返回类的引用。如在代码中,可以使用return this来返回某个类的引用。此时,这个this关键字就代表类的名称。

问题4:

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

  • 问题1:IDEA中没有junit

  • 问题1解决方案:点击小灯泡,根据相应的提示做就行。不需要按照博客那样复杂的来

  • 问题2:运行代码时,运行结果总为另外一个代码如图

  • 问题2解决方案:有错代码文件在目录中,编译运行时会自动运行错误代码。将错误的代码文件删去即可。

代码托管

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

上周考试错题总结

A variable whose scope is restricted to the method where it was declared is known as a(n)
A
.
parameter

B
.
global variable

C
.
local variable

D
.
public instance data

E
.
private instance data
正确答案: C 你的答案: A

解析:局部变量是那些声明它们的方法的“局部”变量,也就是说,它们只能在方法内部访问。全局变量是那些可以从任何地方访问的变量,而参数是传递给方法的变量。可以将实例数据视为整个对象的全局变量。

A class' constructor usually defines

A
.
how an object is initialized

B
.
how an object is interfaced

C
.
the number of instance data in the class

D
.
the number of methods in the class

E
.
if the instance data are accessible outside of the object directly

正确答案: A 你的答案: D
解析:
构造函数应该用于“构造”对象,即设置实例数据的初始值。这不是必需的,但通常是这样做的。对象的接口由实例数据和方法上使用的可见性修饰符决定。

结对及互评

  • 结对学习内容
  • 对子父类进行了讨论
  • 讨论了this的用法并总结
  • 对书上课后题如何编写的讨论。

点评:

  • 博客中值得学习的或问题:
  • 内容丰富
  • 问题详尽

点评过的同学博客和代码

  • 本周结对学习情况
  • 上周博客互评情况

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

学习还需下真功夫
课程难度越来越大,时间更加紧迫了。我们要将有限的时间投入到无限地学习当中去

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
第四周 571/1000 5/7 22/60

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

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

  • 计划学习时间:24小时

  • 实际学习时间:20小时

  • 改进情况:

(有空多看看现代软件工程 课件
软件工程师能力自我评价表
)

参考资料

posted @ 2019-09-30 23:20  J~oker  阅读(135)  评论(1编辑  收藏  举报