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

目录

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

    • 教材学习内容总结
    • 教材学习中的问题和解决过程
    • 代码调试中的问题和解决过程
    • [代码托管]
    • 上周考试错题总结
      • 点评过的同学博客和代码
    • 其他(感悟)
    • 学习进度条
    • 参考资料

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

教材学习内容总结

  1. 保护可见性提供了继承之间最恰当的封装机制
  2. 可以使用super引用来调用父类的构造方法
  3. 子类可以重写(重定义)继承自父类的方法

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

  • 问题1:父类与子类的关系
  • 问题1解决方案:先有父类,再有子类,先析构子类,再析构父类
    第一,子类对象在创建时会首先调用父类的构造函数
    第二,父类构造函数执行结束后,执行子类的构造函数
    第三,当父类的构造函数有参数时,需要在子类的初始化列表中显示调用
    第四,析构函数调用的先后顺序与构造函数相反
  • 问题2:每个继承的类代表的什么关系
  • 问题2解决方案:每个继承的类该代表一种is-a关系

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

  • 问题1:如何建立tostring函数
  • 问题1解决方案:按alt+insert键,选择tostring

-问题2:如何多选几个函数?
-问题2解决方案:按住Ctrl,鼠标右键选择

[代码托管]

上周考试错题总结

  • 错题1.The instruction super( ); does which of the following?
    A .calls the method super as defined in the current class
    B .calls the method super as defined in the current class‘parent class
    C .calls the method super as defined in java.lang
    D .calls the constructor as defined in the current class
    E .calls the constructor as defined in the current class‘parent class
  • 解析:instruction super表示对当前类的父类中某些内容的调用。因为除了super()之外没有消息,所以它是对父类构造函数的调用。
  • 错题2.If a programmer writes a class wanting it to be extended by another programmer, then this programmer must
    A .change private methods and instance data to be protected
    B .change public methods and instance data to be protected
    C .change all methods to be protected
    D .change the class to be protected
    E .none of the above, the programmer does not have to change anything
  • 解析:受保护项可由定义它们的类的任何子类访问,而私有项不能由任何其他类访问。因此,以前定义的私有项现在必须受到保护。先前定义的公共实体应保持公共,以便所有其他类仍然可以访问这些公共实体。不应公开以前定义的私有项,因为这将允许所有类访问它们,而不仅仅是子类。
  • 错题3.All classes in Java are directly or indirectly subclasses of the ________ class.
    A .Wrapper
    B .String
    C .Reference
    D .this
    E .Object
  • 解析:Java要求所有类都有父类。如果一个类不扩展另一个类,则默认情况下,它扩展对象类。因此对象类是Java中所有其他类的父类或父类。
  • 错题4:Which of the following is true regarding Java classes?
    A .All classes must have 1 parent but may have any number of children (derived or extended) classes
    B .All classes must have 1 child (derived or extended) class but may have any number of parent classes
    C .All classes must have 1 parent class and may have a single child (derived or extended) class
    D .All classes can have any number (0 or more) of parent classes and any number of children (derived or extended) classes
    E .All classes can have either 0 or 1 parent class and any number of children (derived or extended) classes
  • 解析:Java支持继承,但不支持多重继承,因此Java类可以有任意数量的子节点,但只有一个父级。此外,由于所有Java类都直接或间接从对象类继承,因此所有Java类只有一个父类。
  • 错题5:Using the reserved word, super, one can
    A .access a parent class‘constructor(s)
    B .access a parent class‘methods and instance data
    C .access a child class‘constructor(s)
    D .access a child class‘methods and instance data
    E .none of the above
  • 解析: 超级保留字提供了一种访问父类的方法和实例数据(不管它们是否隐藏)的机制。此外,可以使用super访问父类的构造函数。所以正确答案是a和b的组合,这不是一个选项,所以正确答案是e。
  • 错题6:If you instantiate an Abstract class, the class or object you wind up with
    A .is also an Abstract class
    B .is a normal class
    C .is an Interface
    D .is a reference to an Object
    E .can‘t exist you cannot instantiate an Abstract class
  • 解析:你只能实例化具体的类而不是抽象的类。但是您可以扩展抽象类和接口。
  • 错题7:The protected visibility modifier provides the best possible encapsulation that permits inheritance.
    A .true
    B .false
  • 解析:protected尽可能地限制可见性,同时仍然允许继承。在某些方面,受保护的“广告”应使用继承权。

    点评:

  • 博客中值得学习的或问题:
    • 对课本,代码进行多方位的思考。
    • 认真寻找自己的不足之处。
    • 举例说明问题。
  • 代码中值得学习的或问题:
  • 基于评分标准,我给本博客打分:14分。得分情况如下:
    • 感想,体会不假大空的加1分
    • 排版精美的加一分
    • 结对学习情况真实可信的加1分
    • 正确使用Markdown语法
    • 模板中的要素齐全(加1分)
    • 错题学习深入的加1分
    • 点评认真,能指出博客和代码中的问题的加1分
    • 教材学习中的问题和解决过程, 加5分
    • 代码调试中的问题和解决过程,加2分

点评过的同学博客和代码

  • 本周结对学习情况

    • 赵沛凝20182301
    • 结对照片

    • 结对学习内容
      • 函数调用(IDEA快捷键)
      • 计算器改编
  • 上周博客互评情况

其他(感悟)

对IDEA的了解更加深刻,学习了继承及有关内容

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 26/200 2/2 7/7
第二、三周 235/327 3/5 15/23
第四周 123/450 2/7 8/31
第五周 850/1300 2/9 9/40
  • 实际学习时间:9小时

参考资料

原文地址:https://www.cnblogs.com/20182326lyj/p/11632616.html

时间: 2024-10-15 18:52:02

2019-2020-26 《数据结构与面向对象程序设计》第5周学习总结的相关文章

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

20182304 2019-2020-1 <数据结构与面向对象程序设计>第四周学习总结 教材学习内容总结 1.本章我们学习了使用并编写我们自己的类:类中有与类同名的构造方法,也可以有set,get,toSring与自己定义的方法.实例化一个对象,可通过该对象使用类里的所有方法.实例数据是每次创造一个实例后自动生成新的内存空间的变量 2.uml类图 :每个类可能包含三部分内容:类名.属性.操作(方法).UML类图有属于自己的语法,变量的类型名在变量名的后面,它们之间用冒号作为分隔符,方法的+和-

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

20182306 2019-2020-1 <数据结构与面向对象程序设计>第五学习总结 教材学习内容总结 尽量简单的总结一下本周学习内容 尽量不要抄书,浪费时间 看懂就过,看不懂,学习有心得的记一下 教材学习中的问题和解决过程 问题1:XXXXXX 问题1解决方案:XXXXXX 问题2:XXXXXX 问题2解决方案:XXXXXX ... 代码调试中的问题和解决过程 问题1:XXXXXX 问题1解决方案:XXXXXX 问题2:XXXXXX 问题2解决方案:XXXXXX ... 代码托管 (stat

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

教材学习内容总结 1.编写类与方法(构造方法的结构和用途) 2.实际参数与形式参数.public与private.return与void的区别与含义. 3.UML类图的含义与形式 4.静态类(Math类)静态变量.静态方法 5.类间关系(依赖关系.聚合关系.继承关系) 6.接口的使用,能够在某个类中实现接口的方法(Comparable.Iterator) 7.软件活动开发.方法设计.方法重载.测试(黑盒测试.白盒测试) 教材学习中的问题和解决过程 问题1:toString与return返回的值的

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

教材学习内容总结 1.继承的基本语法与用法. 2.利用UML类图表示继承关系. 3.在具体编写类的时候,先是数据声明再是方法声明. 4.toString方法用println或print或字符串连接会自动调用. 5.每创建一个对象.都会为类中声明的变量建立新的内存空间. 6.UML图一些基础使用方法. 7.对象应该是自管理的,既对象的实例数据应该仅由该对象来修改,这就构成了封装. 代码调试中的问题和解决过程 问题1:测试代码出现错误 问题1解决方案:junit的方法名必须是textxxx或xxxt

20182327 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182327 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名:赵天昊 学号:20182327 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证. 2. 实验过程及结果 不多说,上

20182319《数据结构与面向对象程序设计》实验二报告

20182319 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 彭淼迪 学号:20182319 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,用规定方法测试验证. 2. 实验过程及结果

# 20182331 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182331 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 高宽让 学号:20182331 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnb

20182330 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182330 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 魏冰妍 学号:20182330 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 编写简单的计算器,完成加减乘除模运算. 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. 编写测试代码,测试验证. 2. 实验过程及结果 编写简单计算器,借鉴c语言语法

20182311 2019-2020-1 《数据结构与面向对象程序设计》实验二报告

20182311 2019-2020-1 <数据结构与面向对象程序设计>实验二报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 冷冲 学号:20182311 实验教师:王志强 实验日期:2019年9月16日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnbl

20182333 2019-2020-1 《数据结构与面向对象程序设计》实验2报告

20182333 2019-2020-1 <数据结构与面向对象程序设计>实验2报告 课程:<程序设计与数据结构> 班级: 1823 姓名:钱佳禹 学号:20182333 实验教师:王志强 实验日期:2019年9月9日 必修/选修: 必修 1.实验内容 (1) 编写简单的计算器,完成加减乘除模运算. (2) 要求从键盘输入两个数,使用判定语句选择一种操作,计算结果后输出,然后使用判定和循环语句选择继续计算还是退出. (3) 编写测试代码,测试验证.(https://www.cnblo