20182318 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结
20182318 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结
教材学习内容总结
教材4.8.1
迭代器和for循环
- Iterable接口
- hasNext,next的意义
- 迭代器和for的区别
教材第五章内容
- 类和对象的确定
- 分配职责
- 类的定义和构建
- 实例数据
- UML类图
- 聚合
- this引用
- 方法设计
- 方法重载
- 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小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)