2019-2020-26 《数据结构与面向对象程序设计》第5周学习总结
Posted 20182326lyj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019-2020-26 《数据结构与面向对象程序设计》第5周学习总结相关的知识,希望对你有一定的参考价值。
目录
2019-2020-26 《数据结构与面向对象程序设计》第5周学习总结
教材学习内容总结
- 保护可见性提供了继承之间最恰当的封装机制
- 可以使用super引用来调用父类的构造方法
- 子类可以重写(重定义)继承自父类的方法
教材学习中的问题和解决过程
- 问题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小时
参考资料
以上是关于2019-2020-26 《数据结构与面向对象程序设计》第5周学习总结的主要内容,如果未能解决你的问题,请参考以下文章
20182323 2019-2020-1 《数据结构与面向对象程序设计》实验七报告
20182324 2019-2020-1 《数据结构与面向对象程序设计》第4周学习总结