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

20155328 2016-2017-2 《Java程序设计》第四周学习总结

2017-03-19 21:03 309 查看

学号 2016-2017-2 《Java程序设计》第四周学习总结

教材学习内容总结

继承:避免多各类间重复定义行为,extends关键字表示继承后再扩充原本没有的行为。如果没有使用extends关键字指定继承任何类,则比为继承java.lang.Object。

子类与父类之间,是“is a”的关系,即子类是一种父类。

多态就是使用单一接口操作多种类型的对象。

重新定义:定义与父类中相同的方法部署,但执行内容不同。重新定义方法时,对于父类中的方法权限,只能扩大但不能缩小。

如果某方法区块中真的没有任何程序代码操作,可以使用abstract将该方法标示为抽象方法。内含抽象方法的类,一定要在class前标示abstract,它标示这是一个定义不完整的抽象类。

在类内部,关键字public,protected,private和无关键字都可存取;相同包类中,关键字public,protected和private可存取,无关键字不可存取;在不同包类之间,public关键字可存取,protected子类可存取,private和无关键字不可存取。

如果想取得父类中的方法定义,可以在调用方法前,加上super关键字。

final限定用在声明变量时,如果后续撰写程序时自己或别人不经意想修改final变量,就会出现编译错误;而如果用在class前定义时,表示这个类是最后一个了,不会再有子类(即不能被继承)。

interface关键字用于定义行为,而implements关键字用于类操作接口。

与继承的“是一种”关系不同,操作接口表示“拥有行为”。

类可以同时继承某个类,并操作某些接口。

教材学习中的问题和解决过程

问题1:在看第六章前面时,教材代码中常出现format,不太明白他的意思。

解决方案1:去百度查阅了一下format的用法,阅读了《java中的String.format使用》



代码调试中的问题和解决过程

问题1:在运行教材162页的RPG程序时,编译后显示如下:



解决方案1:看了错误提示信息,揣测是Role程序中的问题,点开Role后发现是编写setBlood时未写形式参数,后来补充上了:



问题2:书上许多程序中出现了@ Override,看了169页的解释,依然不太理解。

解决方案2:询问了同学后,在原代码上加上了@Override,如图,出现了以下标志:





代码托管

运行statistics脚本截图:



上周考试错题总结

System.out.println(“”+52+25);的结果是(5225)。错题原因:对println了解不深刻,引号后的加号是直接将内容贴上去,无需计算。

p86 命令行下编译Guess.java的命令是(javac -d . Guess.java)。错题原因:没有写-d,忽略了是将.class文件放在指定目录下。

p109 Average.java 求1,2,3,4,5的平均值的命令是(java cc.openhome.Average 1 2 3 4 5。错题原因:忘了写cc.openhome.目录。

其他(感悟、思考等,可选)

这周虽比起上周的仓促好了一些,但离每天敲代码还有些距离。学以致用,也须以用补学。希望自己再接再厉吧:)



学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周8/81/120/20
第二周164/1721/225/45
第三周248/4201/325/70
第四周465/8851/425/95
参考:软件工程软件的估计为什么这么难软件工程 估计方法

计划学习时间:30小时

实际学习时间:25小时

改进情况:

有空多看看现代软件工程 课件 软件工程师能力自我评价表

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导

...
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: