20182331 2019-2020-4《数据结构与面向对象程序设计》第4周学习总结
20182331 2019-2020-1 《数据结构与面向对象程序设计》第1周学习总结
教材学习内容总结
- for语句:通常用于已知循环次数的情况
for-each:简化了Iterable对象中元素的处理 - 类的分析
实例数据:类中的属性
UML类图:对程序设计进行可视化描述的建模语言 - 封装
可见性修饰符:public,private,protected
访问器与修改器:为访问和修改实例数据值提供服务 - 方法的分析
return语句:求返回值
教材学习中的问题和解决过程
- 问题1:对ArrayList类还是没看懂,不知道它的具体用法
- 问题1解决方案:通过上网查找,我找到了一篇博客,它是对ArrayList进行了总结。下面是博客的链接
http://www.cnblogs.com/YSO1983/archive/2011/08/22/2149711.html
总结:ArrayList内部封装了一个Object类型的数组,从一般的意义来说,它和数组没有本质的差别,甚至于ArrayList的许多方法,如Index、IndexOf、Contains、Sort等都是在内部数组的基础上直接调用Array的对应方法。 - 问题2: 什么是权限修饰符,它有什么作用,为什么需要它
- 问题2解决方案:一个Java应用有很多类,但是有些类,并不希望被其他类使用。每个类中都有数据成员和方法成员,但是并不是每个数据和方法,都允许在其他类中调用。如何能做到访问控制呢?就需要使用访问权限修饰符
1 public:所有的类都可以访问。
2 private:只有在同一个类中才可以访问。
3 protected:同一个类中、同一个包中、子类中都可以访问
4、包类型的,即默认类型 同一个类中、同一个包中可以访问到
代码调试中的问题和解决过程
-
问题1:我输入n为2(让用户输入两个值)但是用户可以输出三个值,所以就困在了那里。
-
问题1解决方案:后来发现是我的for循环中的判断语句有问题。所以应该将<换成<=。
-
问题2:在进行people的编程中一直不能运行
-
问题2解决方案:多打了一个花括号,结果导致找不到主类
代码托管
上周考试错题总结
1.What happens if you declare a class constructor to have a void return type?
A . You'll likely receive a syntax error
B . The program will compile with a warning, but you'll get a runtime error
C . There's nothing wrong with declaring a constructor to be void
D . The class' default constructor will be used instead of the one you're declaring
解析:声明任何类型的构造函数为偶数void都是违反语法的,这样您将收到语法错误。
2.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
解析:局部变量是那些声明它们的方法的“局部”变量,也就是说,它们只能在该方法内部访问。全局变量是可以从任何地方访问的变量,而参数是传递到方法中的变量。实例数据可以看作是整个对象的全局变量。
3.A constructor may contain a return statement so long as no value (or expression) is returned.
A . true
B . false
解析:构造函数可以包含非值返回的返回语句。
4.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
解析:封装意味着类包含操作数据所需的数据和方法。为了正确地保留封装,实例数据不应该直接从类外部访问,因此实例数据被设为私有,并定义方法来访问和操作实例数据。此外,访问和操作实例数据的方法被公开,以便其他类可以使用该对象。保留字“final”用于控制继承,与封装无关。
5.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
解析:当方法共享相同的名称时,它们被称为重载。消息中传递的参数的数量和类型提供了调用正确方法的信息。
- The expressions that are passed to a method in an invocation are called
A . actual parameters
B . formal parameters
C . formal arguments
D . formals
解析:形式(形式参数,形式参数)是在一个方法的报头中声明的形式。实际参数(实际值、实际参数)是实际上在调用中传递给方法的表达式。
总结:其实我列举出来的问题只是本周学习中的一些具有代表性,思考型的错误,一些关于基础知识点的错误我根本就没有罗列,知识点的错漏还是太大了。
结对及互评
- 博客中值得学习的或问题:
- 学习深刻,自己有方法
- 代码中值得学习的或问题:
- 使用继承减少代码的重复编写
- 基于评分标准,我给本博客打分:100分。得分情况如下:
- 正确使用Markdown语法(加1分)
- 模板中的要素齐全(加1分)
- 教材学习中的问题和解决过程, 一个问题加1分
- 代码调试中的问题和解决过程, 一个问题加1分
- 排版精美的加一分
- 代码超过300行(加2分}
- 代码Commit Message规范的加1分
- 有动手写新代码的加1分
- 结对学习情况真实可信的加1分
点评过的同学博客和代码
- 本周结对学习情况
- 20182309
- 结对学习内容
- 学习IDEA的操作
- 快捷生成类
- 集成开发
- 使用IDEA快速处理错误
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第四周 | 399/1222 | 2/6 | 22/89 |