20182308 2019-2020-1 《数据结构与面向对象程序设计》第5周学习总结
教材学习内容总结
继承的基本知识:extends的概念(相当于把父类的代码复制粘贴到了子类代买中);
private以及protected标识的用法(原则上用private,但是需要引用、又不破坏封装原则,就使用protected);
super的用法(引用父类中的相关实例数据);
在子类的运行式当中需要注意输入的数据格式,才能确保代码运行不出错(当然一般来说也需要main主方法,无法运行的运行代码没有存在的意义)。
教材学习中的问题和解决过程
问题一:如果private在大多数情况下就可以够用,那么protected的存在意义究竟是什么呢?
问题一解决过程:根据课本P232的说法,在该类的派生类中需要引用这个具体数字时,比如一个private int a= 101,那么在派生类当中就不可能知道这个a是101,然而如果派生类的运行无法脱离这个a的具体值的话,private的功能就有些不符合需求了。因此protected的存在意义就是:可以引用,但是不可更改父类中的这个值。
问题二:抽象类的特征是什么?在什么时候需要使用抽象类?
问题二解决过程:抽象类的特征一般来说就是类中有一个抽象方法,而抽象方法的特点就是:没有定义的方法,有时候甚至是空白方法。一般来说子类继承这样的父类的时候,可以根据需要各自编写这个抽象类中的抽象方法。
代码调试中的问题和解决过程
问题一:没有搞清楚getXX和setXX两种方法的区别,导致了运行错误。
问题一解决过程:经过实践和参看优秀同学的代码得知,get的目的是输出,所以需要有输出值(不能设置为void);而set的目的就是建立一个变量,所以需要输入,因此括号当中需要有变量(形式参数)。否则在运行的过程中就会出现错误。
[代码托管](https://gitee.com/besti1823/20182308IZUMO)
上周考试错题总结
问题一:The instruction super( ); does which of the following?
问题一解决过程:意思就是说super的作用,是在子类中可以引用父类的实例方法。
问题二:Which of the following is not a method of the Object class?
本周结对学习情况
点评过的同学博客和代码
[20182312](https://www.cnblogs.com/shouko/p/11632973.html)
结对照片
结对学习内容
一起解决了实践一、实践四、实践五需要团队合作的内容;
报团取暖,在ddl之前一起赶作业ovo。
上周博客互评情况
[20182312](https://www.cnblogs.com/shouko/p/11569734.html)
其他
1、在国庆假期中的学习其实是充满相当的困难性的,因为大部分优秀同学都无法解答代码相关的问题,同时自己也有一些学习的怠惰性,很容易掌控不好学习的节奏。实际上操之过急、在假期开始之前就做完实验以及过于稳健、在deadline前夜依旧有条不紊的行为都是不正确的。每天稍微学习和理解一些,(尤其是我们现在正在衔接到Android的关键时期)不一定要时刻上机,注意书本和网络知识的有机结合,并且留给自己一定的时间(当然也不用太多)去慢慢消化、和旧的知识有机结合。
2、因为在学习C语言的时候已经可以看出个人的代码思路很混乱、不合理,缺乏逻辑性,因此应该积极学习班中优秀的、逻辑清楚的同学的代码思路,同时也要尝试着写伪代码,来帮助自己理清思路。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
目标 | 6000 | 30 | 400h | |
第一周 | 101/101 | 2/2 | 23/23 |
了解了一些Linux系统操作入门、 学会了基本的JDB调试操作 |
第二、三周 | 353/441 | 3/5 | 42/67 |
能够基本记住Java代码编程中的格式代码。 了解了一些有关方法的特殊命令(比如substring) 了解了一些有关类的基本知识。 |
第四周 | 327/768 | 2/7 | 28/95 | 基本已经适应IDEA的基本功能 |
第五周 | 807/1575 | 2/9 | 17/112 |
基本能够理解继承的作用和用法, 初步了解了接口的代码原理, 能够正确分析优秀同学的代码思路 |
- 计划学习时间:25h
- 实际学习时间:17h
- 改进情况:注意学习新知识、休息、理解知识、实践四者的统一,实际上是提高了学习的效率。
参考资料
posted on 2019-10-07 22:23 20182308hlh 阅读(176) 评论(1) 编辑 收藏 举报