2019-2020-26 《数据结构与面向对象程序设计》第4周学习总结
2019-2020-26 《数据结构与面向对象程序设计》第4周学习总结
目录
教材学习内容总结
- 构造方法不能有任何返回值
- 静态变量由类中的所有实例所共享
- 当把对象传递给方法时,实参和形参互为别名
- 重载方法的各版本由参数个数、类型及次序来区分
教材学习中的问题和解决过程
- 问题1:return是必须使用的吗?
- 问题1解决方案:有返回值类型而不是void的方法中必须要有return语句。没有返回值的方法可能使用一个不带表达式的return语句,但这不是必须的。方法中应该只使用一条return语句。
- 问题2:this引用指向什么?
- 问题2解决方案:this引用通常指向当前正在运行的对象。类的非静态方法一般为类的所有对象所共有,但它通过一个具体对象来调用。所以this引用指向的对象,正是执行的方法所依赖的对象。
代码调试中的问题和解决过程
-
问题1:小灯泡中无create test
-
问题1解决方案:由于版本不同,test生成位于此处
-问题2:如何统计IDEA代码
-问题2解决方案:
安装statistics插件
[代码托管]
上周考试错题总结
- 错题1:The relationship between a class and an object is best described as
A .classes are instances of objects
B .objects are instances of classes
C .objects and classes are the same thing
D .classes are programs while objects are variables
E .objects are the instance data of classes
正确答案: B 你的答案: E - 解析:类是程序实体的定义,表示世界上事物/实体的类。类定义包括实例数据和方法。要使用类,它被实例化。这些实例称为对象。因此,对象是类的实例。程序代码直接与对象交互,而不是与类交互。
- 错题2:In order to preserve encapsulation of an object, we would do all of the following except for which one?
A .Make the instance data private
B .Define the methods in the class to access and manipulate the instance data
C .Make the methods of the class public
D .Make the class final
E .All of the above preserve encapsulation
正确答案: D 你的答案: E - 解析:封装意味着类包含操作数据所需的数据和方法。为了恰当地保留封装,实例数据不应该直接从类外部访问,因此实例数据被设为私有,并定义了访问和操作实例数据的方法。此外,访问和操作实例数据的方法被公开,以便其他类可以使用该对象。保留字“final”用于控制继承,与封装无关。
- 错题3: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 你的答案: D - 解析:局部变量是那些声明它们的方法的“局部”变量,也就是说,它们只能在该方法内部访问。全局变量是可以从任何地方访问的变量,而参数是传递到方法中的变量。实例数据可以看作是整个对象的全局变量。
- 错题4:Having multiple class methods of the same name where each method has a different number of or type of parameters is known as
A .encapsulation
B .information hiding
C .tokenizing
D .importing
E .method overloading
正确答案: E 你的答案: A - 解析:当方法共享相同的名称时,它们被称为重载。消息中传递的参数的数量和类型提供了调用正确方法的信息。
- 错题5:An example of passing message to a String where the message has a String parameter would occur in which of the following messages?
A .length
B .substring
C .equals
D .toUpperCase
E .none of the above, it is not possible to pass a String as a parameter in a message to a String
正确答案: C 你的答案: E - 解析:length和touppercase消息没有参数,substring有两个int参数。对于等于,必须将字符串作为参数传递,以便可以将接收消息的字符串与作为参数传递的字符串进行比较。
结对及互评
评分标准
-
正确使用Markdown语法(加1分):
-
模板中的要素齐全(加1分)
-
教材学习中的问题和解决过程, 一个问题加1分
- 加5分
-
代码调试中的问题和解决过程, 一个问题加1分
-
本周有效代码超过300分行的(加2分)
- 一周提交次数少于20次的不加分
-
其他加分:
- 周五前发博客的加1分
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 进度条中记录学习时间与改进情况的加1分
- 有动手写新代码的加1分
- 课后选择题有验证的加1分
- 代码Commit Message规范的加1分
- 错题学习深入的加1分
- 点评认真,能指出博客和代码中的问题的加1分
- 结对学习情况真实可信的加1分
-
扣分:
- 有抄袭的扣至0分
- 代码作弊的扣至0分
- 迟交作业的扣至0分
点评:
- 博客中值得学习的或问题:
- 对课本,代码进行多方位的思考。
- 认真寻找自己的不足之处。
- 举例说明问题。
- 代码中值得学习的或问题:
- 基于评分标准,我给本博客打分:14分。得分情况如下:
- 感想,体会不假大空的加1分
- 排版精美的加一分
- 结对学习情况真实可信的加1分
- 正确使用Markdown语法
- 模板中的要素齐全(加1分)
- 错题学习深入的加1分
- 点评认真,能指出博客和代码中的问题的加1分
- 教材学习中的问题和解决过程, 加5分
- 代码调试中的问题和解决过程,加2分
点评过的同学博客和代码
- 本周结对学习情况
-
结对照片
-
结对学习内容
- IDEA插件应用
- 码云链接上传
- 上周博客互评情况
其他(感悟)
开始使用IDEA,感觉比JDK好用许多,但是对快捷操作的熟悉程度还不够,需要多加练习
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 26/200 | 2/2 | 7/7 | |
第二、三周 | 235/327 | 3/5 | 15/23 | |
第四周 | 123/450 | 2/7 | 8/31 |
-
实际学习时间:8小时
-
改进情况:
应该开始熟悉IDEA的应用。