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

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

教材学习内容总结

  1. for语句:通常用于已知循环次数的情况
    for-each:简化了Iterable对象中元素的处理
  2. 类的分析
    实例数据:类中的属性
    UML类图:对程序设计进行可视化描述的建模语言
  3. 封装
    可见性修饰符:public,private,protected
    访问器与修改器:为访问和修改实例数据值提供服务
  4. 方法的分析
    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
解析:当方法共享相同的名称时,它们被称为重载。消息中传递的参数的数量和类型提供了调用正确方法的信息。

  1. 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

参考资料

posted @ 2019-09-30 14:26  20182331  阅读(162)  评论(2编辑  收藏  举报