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

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

教材学习内容总结

  • 类结构的定义和概念
  • 构造方法的结构和用途
  • UML类图的含义与形式
  • 类间关系
  • 接口的使用,能够在某个类中实现接口的方法
  • 方法定义的结构

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

  • 问题1:不明白类和对象的区别
  • 问题1解决方案: 对象是类的一个实例

类是一个模板,它描述一类对象的行为和状态

  • 问题2:java里面this.的意义是什么,在generate里面生成取值赋值的代码的时候都有this跟着。
  • 问题2解决方案:成员变量和局部变量重名时,在方法中使用this时,表示的是该方法所在类中的成员变量。(this指向当前对象自己)。

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

  • 问题1:对于getxxx和setxxx的作用不是很清楚
  • 问题1解决方案:set对形参赋值,get从set里面返回所需要的值,如图setage起到筛选数值的作用,而getage只负责返回得到的值。而且两者的先后顺序并不会有什么影响。

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

  • 问题2:类,对象,方法三者之间的关系搞不明白
  • 问题2解决方案:看到了网上一个很形象的回答

学号 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结_第2张图片

代码托管

学号 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结_第3张图片

上周考试错题总结

1.Which of the following reserved words in Java is used to create an instance of a class?

A .class

B .public

C .public or private, either could be used

D .import

E .new

解析:new用来创建类的实例,如Car x=new Car()。
***
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

解析:本地变量在声明之后,只有在声明的方法里面才可以被引用。
***

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

解析:在equals中必须使用parameter参数
***
4.The expressions that are passed to a method in an invocation are called

A .actual parameters

B .formal parameters

C .formal arguments

D .formals

E .any of the above

解析:实际的参数(实际参数、实际参数)是实际在调用中传输到方法的表达式
***
5.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

E .None of the above

解析:每一个函数里都有构造函数,如果自己加了void类型后也只会是出现一个空的构造函数而非产生语法错误。
***
6.The following method header definition will result in a syntax error: public void aMethod( );

A .true

B .false

解析:语法错误的原因是因为它以“;”符号结尾后面没有跟着{}
***
7.Defining formal parameters requires including each parameters type.

A .true

B .false

解析:所有的正式参数 (在方法头中定义的) 必须包括它们的类型
***

结对及互评

评分标准

  • 基于评分标准,我给本博客打分:15分。得分情况如下:
  1. 正确使用Markdown语法(加1分):

    • 不使用Markdown不加分

    • 有语法错误的不加分(链接打不开,表格不对,列表不正确...)

    • 排版混乱的不加分

  2. 模板中的要素齐全(加1分)
    • 缺少“教材学习中的问题和解决过程”的不加分
    • 缺少“代码调试中的问题和解决过程”的不加分
    • 代码托管不能打开的不加分
    • 缺少“结对及互评”的不能打开的不加分
    • 缺少“上周考试错题总结”的不能加分
    • 缺少“进度条”的不能加分
    • 缺少“参考资料”的不能加分
  3. 教材学习中的问题和解决过程, 一个问题加1分

  4. 代码调试中的问题和解决过程, 一个问题加1分

  5. 本周有效代码超过300分行的(加2分)
    • 一周提交次数少于20次的不加分
  6. 其他加分:
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 进度条中记录学习时间与改进情况的加1分
    • 有动手写新代码的加1分
    • 课后选择题有验证的加1分
    • 代码Commit Message规范的加1分
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 结对学习情况真实可信的加1分
  • 参考示例

点评过的同学博客和代码

  • 本周结对学习情况
    • 20182318
    • 20182333
    • 结对学习内容
      • 如何在IDEA上将代码git到码云
      • 如何使用TDD测试代码
      • 对书上教材的讨论学习
  • 上周博客互评情况
    • 20182318

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

本周主要学习了面向对象的内容,包括类的继承和方法的使用等内容,感觉难度越来越大,一定尽力跟上大家的进度,不被超越太多

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 126/126 2/2 20/20
第二周 0/126 2/2 20/40
第三周 353/479 2/6 20/60
第四周 1760/2239 2/8 30/90

参考资料

  • 《Java程序设计与数据结构教程(第二版)》

  • 《Java程序设计与数据结构教程(第二版)》学习指导
  • ...

你可能感兴趣的:(学号 2019-2020-1 《数据结构与面向对象程序设计》第四周学习总结)