20155214 2016-2017-2 《Java程序设计》第4周学习总结
2017-03-19 23:22
267 查看
20155214 2016-2017-2 《Java程序设计》第4周学习总结
教材学习内容总结
Chapter6
父类就是将多个类的相同代码提升(Pull Up)子类继承父类会继承到private成员,通过父类方法存取。
多态就是使用单一接口操作多种类型对象。
抽象类不能用来生成实例。
依权限小至大区分,就是public,无关键字,protected,private
Chapter7
继承是“是一种”关系,接口是“拥有行为”。两个接口都有定义的方法不一定表示的是相同的行为。
教材学习中的问题和解决过程
判断是否可以Cast成功
Role role2 = new Magician(); SwordsMan swordsMan = (SwordsMan) role2;
答:role2为Role类型参考至Magician实例,但role2不能Cast至SwordsMan类,编译失败。
子类继承抽象类的抽象方法
子类在操作抽象方法时,必须选择:1.标识该子类为抽象类,而继续标注该方法为抽象方法。
2.或操作重写该抽象方法。
课程代码验证期间问题
super关键字使用细节
P173 如果想取得父类中的方法定义,可以在调用方法前,加上super关键字。public class Bird{ protected String name; public Bird(String name){ this.name = name; } public Bird copy(){ return new Bird(name); } ... public class Chicken extends Bird{ public Chicken(String name){ super(name); } public Chicken copy(){ return new Chicken(name); } } }
由于子类重新定义方法时返回类型与父类不一样所以编译不通过
super关键字调用的父类方法,权限只能扩大不能减小,并且其他部分必须与父类中方法签署完全一致。
其他课程代码已上传至码云,见链接:http://git.oschina.net/bestiisjava2017/besti155214_JavaProgammer
代码调试中的问题和解决过程
设计模式与抽象类方法
1.抽象类方法体必须为空;2.在子类中重写操作抽象方法,以此决定执行环境。
代码托管
代码链接:http://git.oschina.net/bestiisjava2017/besti155214_JavaProgammer代码提交过程截图:
代码量截图:
上周考试错题总结
System.out.println(“”+52+25); 结果是(5225)System.out.println(52+25+””); 结果是(77)
private不能用在构造方法上,这样就无法创建对象了。(X)
其他(感悟、思考等,可选)
切身体会了行为的多态是为了使架构合理而又有弹性明白了编写代码时要考虑程序的可维护性,使程序能针对新需求进行关键性修改。
了解了接口语法的细节。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 38/38 | 1/2 | 15/15 | |
第二周 | 294/332 | 3/4 | 30/45 | |
第三周 | 763/1073 | 2/6 | 32/77 | |
第四周 | 1204/2277 | 1/7 | 29/103 |
N「次数」 | Y「计划学习时间 | X「实际学习时间」 | X-/+X/N | |
---|---|---|---|---|
第一周 | 0 | 18 | 15 | ∞ |
第二周 | 1 | 33 | 30 | 0 |
第三周 | 2 | 35 | 32 | 16-48 |
第四周 | 3 | 35 | 29 | 25.4-44.6 |
参考资料
Java学习笔记(第8版)《Java学习笔记(第8版)》学习指导
相关文章推荐
- # 20155226 2016-2017-2 《Java程序设计》第4周学习总结
- 20155228 2016-2017-2 《Java程序设计》第4周学习总结
- 学号20155311 2016-2017-2 《Java程序设计》第4周学习总结
- 20145209 2016-2017-2 《Java程序设计》第4周学习总结
- 20155215 2016-2017-2 《Java程序设计》第4周学习总结
- 20155202 2016-2017-2 《Java程序设计》第4周学习总结
- 20155235 2016-2017-2 《Java程序设计》第4周学习总结
- 20155338 2016-2017-2 《Java程序设计》第4周学习总结
- 20155231 2016-2017-2 《Java程序设计》第4周学习总结
- 20155322 2016-2017-2 《Java程序设计》第4周学习总结
- 20155339 2016-2017-2 《Java程序设计》第4周学习总结
- 20155314 2016-2017-2 《Java程序设计》第4周学习总结
- 20145207 2016-2017-2 《Java程序设计》第4周学习总结
- 20155210潘滢昊 2016-2017-2 《Java程序设计》第4周学习总结
- 20155301 2016-2017-2 《Java程序设计》第4周学习总结
- 20155206 2016-2017-2 《Java程序设计》第4周学习总结
- 20155226 2016-2017-2 《Java程序设计》第4周学习总结
- 20155214 2016-2017-2 《Java程序设计》第2周学习总结
- 20155212 2016-2017-2 《Java程序设计》第4周学习总结
- 20155237 2016-2017-2 《Java程序设计》第4周学习总结