20155205 2016-2017-2 《Java程序设计》第3周学习总结
20155205 2016-2017-2 《Java程序设计》第3周学习总结
教材学习内容总结
第四章
- 定义类的两种方法(new和this的用法)


只要有一个类定义,编译程序就会产生一个.class文档。上例中,实际上会产生Field.class和Clothes.class两个文档。 - 如果要求精确度,那就要小心使用浮点数,而且别用==直接比较浮点数运算结果。别用==或!=来比较两个对象实质内容值是否相同(因为==与!=是比较对象参考)。
- Java中有两大类型系统,即基本类型与类类型。
- =用来把某个名牌绑到某个对象,==用来比较这两个名牌是否绑到同一对象。这里和c语言不同,==不能直接用来比较两个数值是否相等。
- p93页关于null的错误情况,会出现 NullPointerException。 null 代表一个特殊对象,任何类声明的参考名称都可以参考至null,表示该名称没有参考至任何对象实体。
- 学习到了增强式for循环语法:
for(int score :scores) {
System.out.printf("学生分数:%d %n", scores);
}
for(int[] row :cords)
{
for(int value :row)
{
System.out.printf("%2d",value);
}
}
- 以""包括的字符串,只要内容相同,无论在程序代码中出现几次,JVM都只会建立一个String实例,并在字符串池中维护。p120第7题。
第五章
- 如果想存取对象的数据成员,可以通过“.”运算符加上数据成员名称。
- 声明为private的成员表示为类私有,用户无法在其他类的程序代码中直接存取。而声明为public的成员则与之相反。
- 在没有撰写任何构造函数时,可以以无变量方式调用构造函数:
Some some = new Some()
- this()调用只能出现在构造函数的第一行。
教材学习中的问题和解决过程
- 问题1:p119第4题为什么结果是执行时显示20?
- 问题1解决方案:根据p99中图4.5,可以看到这里和c语言不同,一维数组作为对象同时被score1和score2参考,因此更改了 score2的数组索引对象,score1索引对象的值也就变了。
- 问题2:关于建立了几个实例的问题。p120,6、7、8题。
- 问题2解决方案:只要数组的索引都参考至null,那么就只有0个实例;以""包括的字符串,只要内容相同,无论在程序代码中出现几次,JVM都只会建立一个String实例,并在字符串池中维护。
- 问题3:p113中"Ja"+"va"就是"Java",为什么不算是产生了新的实例?根据p111所说,使用+会产生新的String实例。
- 问题3解决方案:查找资料后,觉得这个说法可以让我理解。

代码调试中的问题和解决过程
- 问题1:在iterm中执行程序最后会出现%,如图

但在IDEA中不会出现这样的情况,如图

- 问题1解决方案:在输出后面加了%n,便出现下图中的情况,暂时还不知道为什么会出现%。

- 问题2:在p136的调用版本中,想调用Integer却出现下图情况。

- 问题2解决方案:原来是自己在写程序时将第二个Method错写成Metod!这种错误虽然小,但是能造成致命的一击,以后决不能再犯此类错误!
代码托管
- 代码提交过程截图:
- 运行 git log --pretty=format:"%h - %an, %cd : %s" 并截图


- 代码量截图:
- 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图

- 运行 find src -name "*.java" | xargs cat | grep -v ^$ | wc -l 并截图
上周考试错题总结
- Linux Bash中,查找当前目录中前天创建的Java文件的命令是
(find . –name *.java -ctime 2)
总结 :-name *.java是查找Java文件的命令,注意题中查找目录为当前目录,因此是“.”。
- ~0b1011的十进制值是(-12)。
总结 :计算机存放数据时是00001011,取反后是11110100,因为计算机存储的是补码,因此找到从右向左第一个1,之后除了符号为挨个儿取反,得到10001100,即-12。
其他(感悟、思考等,可选)
这一周的代码量提高了不少,但同时也感觉很多东西之前只是浅层次的了解,要达到真正的理解需要自己花费很多功夫。同时我觉得看完一章的内容后做一下课后练习题对自己的提高有很大帮助,感觉能一下子找到重点。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 16/16 | 1/1 | 12/12 | |
| 第二周 | 124/140 | 1/2 | 19/31 | |
| 第三周 | 641/781 | 1/3 | 26/57 | 代码量的增加 |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。
计划学习时间:25小时
实际学习时间:26小时
改进情况:
参考资料
20155205 2016-2017-2 《Java程序设计》第3周学习总结的更多相关文章
- 20155334 2016-2017-2 《Java程序设计》第九周学习总结
20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...
- 20155321 2016-2017-2 《Java程序设计》第九周学习总结
20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145330孙文馨 《Java程序设计》第一周学习总结
20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...
- 20145337 《Java程序设计》第九周学习总结
20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...
- 20145337 《Java程序设计》第二周学习总结
20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...
- 20145218《Java程序设计》第一周学习总结
20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...
随机推荐
- Activity 的启动过程深入学习
手机应用也是一个app,每一个应用的icon都罗列在Launcher上,点击icon触发onItemClick事件. 我们要启动「淘宝」这个App,首先我们要在清单文件定义默认启动的Activity信 ...
- mysql 定时任务的使用
mysql5.1.6增加了一个事件调度器(Event Scheduler),可以做定时任务(定时删除记录,定时数据统计),取代之前系统的计划任务.mysql事件调度器可以精确到每秒执行一个任务. 事件 ...
- Struts2框架的数据封装一之属性封装(属性封装的第一种方式:对参数进行封装)
request带着参数来,aciton对其进行处理.在学习action之前,使用的是servlet对request进行处理.request请求时会带有参数,所以我们要对这些参数进行封装. 1. 为什么 ...
- js 正则表达式:密码必须由6-12位数字加字母组成
^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,12}$
- 异常处理 day 30
异常处理 一 错误和异常 二 异常处理 2.1 什么是异常处理? 2.2 为何要进行异常处理? 2.3 如何进行异常处理? 三 什么时候用异常处理 异常和错误 part1:程序中难免出现错误,而错误分 ...
- 6.MySQL图形化工具的使用
6.图形化工具的使用6.1 Mysql Workbench Mysql Workbench是Mysql官方推出的集成图形化工具,替代了之前的图形化管理工具Mysql Administrator和图形化 ...
- 织梦替换ueditor百度编辑器,支持图片水印 教程
1下载ueditor百度编辑器 2 把下载的zip解压得到ueditor文件夹,把解压到的ueditor文件夹扔进你网站的include文件夹去 3 打开 /include/inc/inc_fun_f ...
- 2Y - sort
给你n个整数,请按从大到小的顺序输出其中前m大的数. Input 每组测试数据有两行,第一行有两个数n,m(0<n,m<1000000),第二行包含n个各不相同,且都处于区间[-5000 ...
- andorid 列表视图之SimpleAdapter
.xml <?xml version="1.0" encoding="utf-8"?> <ListView xmlns:android=&qu ...
- hdu 1255(线段树 扫描线) 覆盖的面积
http://acm.hdu.edu.cn/showproblem.php?pid=1255 典型线段树辅助扫描线,顾名思义扫描线就是相当于yy出一条直线从左到右(也可以从上到下)扫描过去,此时先将所 ...