您的位置:首页 > 编程语言 > Java开发

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/381/215/15
第二周294/3323/430/45
第三周763/10732/632/77
第四周1204/22771/729/103
N「次数」Y「计划学习时间X「实际学习时间」X-/+X/N
第一周01815
第二周133300
第三周2353216-48
第四周3352925.4-44.6

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: