20155328 2016-2017-2 《Java程序设计》第三周学习总结
教材学习内容总结
类是对象的设计图,对象是类的实例。用class定义类,用new新建一个对象。
一个原始码中可以有多个类定义,但只能有一个公开类,且文档中的主文档名必须与公开类名称相同。
Scanner对每个基本类型,都会有个对应的next×××()方法,如nextByte(),nextShort(),nextLong()等。
使用BigDecimal剖析传入字符串,以默认精度进行接下来的运算(加、减、乘、除)。
在操作对象时,=是用在指定参考名称参考某个对象,而==是用在比较两个参考名称是否参考同一对象,equals()是比较实质是否相同。
Java遵守IEEE 754浮点数运算规范,使用分数与指数来表示浮点数。可以使用java.math.BigDecimal类得到想要的精度。
如果想比较字符串实际字符内容是否相同,不要使用==,要用equals()。
Java命名规范中取值方法的名称形式是固定的,以get开头,之后接上首字母大写的单词。
this()代表调用了另一个构造函数,至于调用哪一个构造函数,则视调用this时给的自变量类型和个数而定。
教材学习中的问题和解决过程
问题:Java遵守IEEE浮点数运算规范,为什么对有的数还是显示原来的值?
代码调试中的问题和解决过程
- 问题1:书上109页求平均数的代码运行结果错误,如图:
- 解决方法1:通过观察发现书上的代码没有输入过程,因此修改后:
:
然后发现结果运算错误,发现是数的个数不对:
经调整:
- 问题2:有一次使用git push时,到码云中查看自己的项目,发现文件夹无法打开,如图:
问过学长和同学后无果,就到小组提问中寻找,发现有同学已经出现过这个问题。
解决方法2:询问该名同学后,说可能是因为上传的文件夹没有更改与增添,就在敲了新的代码以后再次push,就成功了。
代码托管
运行statistics脚本截图:
上周考试错题总结
Linux Bash中,查找当前目录中前天创建的Java文件的命令是(find . –name *.java -ctime 2)。错题原因:没有添加-name,归根结底是自己的记忆不够彻底,过于死板。
~0b1011的十进制值是(-12)。 错题原因:没有转换成补码来计算。
0x10%9 的结果是( 7 )。0x10&9 的结果是(0)。错题原因:虽然当时是将0x看成0×(乘),但不存在×表示的乘法运算,其实自己也在书上看过0x表示十六进制数,但记忆不够深刻。
其他(感悟、思考等,可选)
经过博客的总结与反思,让我意识到自己从以前到现在的学习方式都存在很大的问题。以前习惯了老师讲课,自己甚至有些被动的接受知识,而从这学期开始经历的转变学习方式的过渡期实在有些长了。归根结底,还是自己的懒惰在作祟。希望能慢慢改掉拖延的坏习惯,一口吃不成个胖子,但可以每天吃几口,慢慢长成个胖子。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 8/8 | 1/1 | 20/20 | |
第二周 | 164/172 | 1/2 | 25/45 | |
第三周 | 248/420 | 1/3 | 25/70 |
计划学习时间:30小时
实际学习时间:25小时