20155204 2016-2017-2 《Java程序设计》第4周学习总结
20155204 2016-2017-2 《Java程序设计》第4周学习总结
教材学习内容总结
- 继承是类与类之间的联系,接口是方法与类之间的联系,多态就是指利用接口和继承来派生许多类。
- 有抽象方法的抽象类class前一定要加abstract。
- 子类如果继承抽象类:1.继续抽象2.操作抽象、
- 可以使用super调用父类方法,不能定义为private
- 重新定义方法时,对于父类的方法权限,只能扩大。
- this(),super(),只能用其一,而且一定在构造函数第一行。
- 接口中的方法没有操作时,默认为抽象。
- 接口可以多个,继承只能一个。
- 程序的弹性和可维护需要分析需求,在编写程序时就尽量考虑周全。
- 接口中的方法如果不能操作要表示为public abstract
- 判断是继承“右边是一种左边”Role role1 = new SwordsMan,是接口“右边拥有左边的行为”Swimmer swimmer1 = new Shark();
教材学习中的问题和解决过程
-
问题1:父类子类执行顺序到底是怎样的?
-
解决:看书、询问同学后理解:先选择父类中要运行什么方法,如果子类没有特殊调用,就都运行,总之是先父后子。
-
问题2:书第189页第3题,为什么会输出一段地址?
-
我发现他在自己定义一个ToString方法,如果把他的方法换成object里的toString并且加上public则可以正常输出。还是不太明白。
代码调试中的问题和解决过程
-
问题1:RPG游戏代码显示String无法转换为int
-
解决方案:在代码中数字错加了引号,当做了字符。
-
问题2:还是RPG游戏中,在重新定义父类中的抽象方法时错误
-
解决方案:在重写父类抽象方法时,不应该再加abstract。
-
问题3:父类有抽象方法,子类继承后编译无法通过
-
解决方案:如果子类没有重新定义抽象方法就要继续标识。
代码托管
-
代码提交过程截图:
-
代码量截图:
上周考试错题总结
- 4.填空:System.out.println(“”+52+25);的结果是(5225)
- 5.填空:System.out.println(52+25+””);的结果是(77)
- 12.填空:两个Integer对象比较大小,可以使用(comareTo())方法
- 13.填空:可以使用java.util.Arrays的(fill())方法把数组初始化成相同的值。
- 错误原因:学习不到位,遗漏了这些细节。
其他(感悟、思考等,可选)
这周学习的内容关乎结构,是比较重要的内容,决定了一个程序的好坏。我在我的学习同伴杜可欣的博客中,看到她在感悟中提出了一个关于低耦合的问题20155203 2016-2017-3 《Java程序设计》第4周学习总结,我也有感而发,于是去找了一下资料, 低耦合-程序员的博客这篇博客介绍的很详细,这两个矛盾的主体以及解决方法都有讲到。感谢同伴的好问题,让我也有了更深入的理解
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 33/33 | 1/1 | 18/18 | |
第二周 | 124/157 | 2/2 | 16/34 | |
第三周 | 531/689 | 3/3 | 20/54 | |
第四周 | 550/1239 | 4/4 | 22/76 |
-
计划学习时间:20小时
-
实际学习时间:22小时
-
改进情况:时间耗费上还是没有改进,不是说总时间没有减少,而是花费在啃书本敲代码的时间上太多,做实践(做课后操作题)的时间太少。