20155225 2006-2007-2 《Java程序设计》第3周学习总结
20155225 2006-2007-2 《Java程序设计》第3周学习总结
教材学习内容总结
- 封装对象内部数据:使用private关键字定义类的私有成员
如果不使用private定义的话,用户撰写程序时,就可以自由存取类私有数据,如下:


使用private定义后,直接存取时会编译失败,如下:


- 使用方法重载时,注意自动装箱、拆箱问题。
编译程序在处理重载方法时,会先处理还没有装箱动作前可符合自变量个数与类型的方法。
直接传入参数1,就是上述情况。
其次才会处理装箱动作之后可符合自变量个数与类型的方法。明确指出参数s.someMethod(new Integer(1));

教材学习中的问题和解决过程
- 问题1:不知道P109为什么命令行自变量提供的整数是存入String类型数组的,不知道String数组是什么类型。
- 解决方案:参考了Java数组String []的用法详解。

- 问题2:测试类是什么意思
解决方案:查了百度,就是用来测试的类,实用还要进一步学习。
- 问题3:P87建立Scanner对象后为什么取得上一个字符用next,而不是取得下一个字符用next
- 问题4:p93在进行i1,i2比较运算的时候为什么没有自动拆箱
比较运算符不会自动拆箱
代码调试中的问题和解决过程
- 问题1:不知道P108示范代码中number=Long.parseLong(scanner.nextLine());什么意思
- 解决方案:参考了java.lang.Long.parseLong(String s, int radix)方法实例scanner对象取得了用户输入的整行文字,再由方法Long.parselong解析字符串为有符号long。那为什么不直接用nextLong()方法呢?尝试了一下发现是可以的。但还存在一个疑问,并没有新建Long实例,怎么用的parselong()方法呢?

代码托管

上周考试错题总结
错题1:Linux Bash中,查找当前目录中前天创建的Java文件的命令是(find . –name *.java -ctime 2)
理解情况:find 命令的路径是作为第一个参数的, 基本命令格式为 find [path] [option] [action]。-atime,最后访问时间;-ctime,创建时间;-mtime最后修改时间。-mtime n:n表示为在n天之前的“一天之内”修改过的文件。
-mtime +n:列出在n天之前(不包含n天本身)被修改过的文件。-mtime -n:列出在n天之内(包含n天本身)被修改过的文件。newer file:file为一个已存在文件,列出比file还要新的文件名。home目录中,当天有改动的文件:find ~ -mtime 0。列出home目录下比Code文件夹新的文件:find ~ -newer /home/shiyanlou/Code- 错题2:~0b1011的十进制值是(-12)
理解情况:java里都是有符号数且都是以字节(8位)为单位存的,负数都是以二进制补码存的。
- 错题3:编译p60 Comparison.java的命令为(javac –d xxx Comparison.java )
- 错题4:运行p69 Odd.class的命令为(java cc.openhome.Odd)。
理解情况:对于javac命令,sourcepath参数指定寻找原始码文档。cp参数指定寻找使用到的其它类链接库,-d参数指定编译完成的位码文档存放位置,文件名包含从当前工作路径到.java文件的所有路径。对于java命令,只有-cp参数指定要执行的.class文件的存放位置,类名必须指定完全吻合名称。
其他
感悟:这次回过头去复习了第二章,感觉之前完全看不懂的内容,现在居然能理解了。特别是现在越来越熟悉在命令行里的操作(javac,java)完全没有用IDEA了。回过头去也能理解package和import了。
学习进度条
| 代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
|---|---|---|---|---|
| 目标 | 5000行 | 30篇 | 400小时 | |
| 第一周 | 10/10 | 1/7 | 20/20 | |
| 第二周 | 120/130 | 1/8 | 8/28 | |
| 第三周 | 543/673 | 1/9 | 25/53 |
计划学习时间:7小时
实际学习时间:25小时
改进情况:虽然时间还是大大超出预期,但感觉这周学习质量提高了
参考资料
20155225 2006-2007-2 《Java程序设计》第3周学习总结的更多相关文章
- 20155225 2016-2017-2 《Java程序设计》第九周学习总结
20155225 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 了解JDBC架构 使用JDBC API JDBC是用于执行SQL的解决方案,开 ...
- 20155225 2016-2017-2 《Java程序设计》第一周学习总结
20155225 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 JVM(java virtual machine)就是java虚拟机,我的理解就是编译运行j ...
- 20155326 2016-2017-2 《Java程序设计》第九周学习总结
20155326 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 1.撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. 2.JDBC目的 ...
- 20155229 2016-2017-2 《Java程序设计》第九周学习总结
20155229 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBaseConnectivity)即java数据库连接 ...
- 20155313 2016-2017-2 《Java程序设计》第一周学习总结
20155313 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周的Java学习进入了一个全新的阶段,对于我这样的并没有每天花费时间钻研的同学来说,最后几 ...
- 20145231 《Java程序设计》第一周学习总结
20145231 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台Java SE,Java EE,Java ME.其中,Java SE是我们学习的基础. Java S ...
- 20145238-荆玉茗 《Java程序设计》第一周学习总结
20145238 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台:由于java领域的应用越来越广,根据不同级别的应用开发区分了不同的应用版本,后正式更名为Java ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
随机推荐
- 什么是oauth2
对于目前大部分Web应用来说,用户认证基本上都由应用自身来完成.具体来说,Web应用利用自身存储的用户凭证(基本上是用户名/密码)与用户提供的凭证进行比较进而确认其真实身份.但是这种由Web应用全权负 ...
- U33405 纽约
U33405 纽约 花费 \(w\) 元可以购买一辆容量为 \(w\) 的车 现在你有 \(n <= 2000\) 个物品, 搬运策略: 一直搬能放下里面最重的, 直到任意物品都不能搬上为止 求 ...
- Kafka 0.8 Consumer Rebalance
1 Rebalance时机 0.10kafka的rebalance条件 条件1:有新的consumer加入 条件2:旧的consumer挂了 条件3:coordinator挂了,集群选举出新的coor ...
- 张鑫旭:Promise异步编程模式
参考文章: http://www.zhangxinxu.com/wordpress/2014/02/es6-javascript-promise-%E6%84%9F%E6%80%A7%E8%AE%A4 ...
- dubbo Filter
官方说明: 调用拦截扩展 扩展说明 服务提供方和服务消费方调用过程拦截,Dubbo 本身的大多功能均基于此扩展点实现,每次远程方法执行,该拦截都会被执行,请注意对性能的影响. 约定: 用户自定义 fi ...
- 20155213 2016-2017-2 《Java程序设计》第七周学习总结
20155213 2016-2017-2 <Java程序设计>第七周学习总结 教材学习内容总结 Lambda 如果使用JDK8的话,可以使用Lambda特性去除重复的信息. 在只有Lamb ...
- laravel 和 thinkphp 条件查询的区别
laravel:以二维数组形式where查询,可以为空,即,该条where不运行: thinkphp:以字符串形式查询,不能为空.
- js工作常见问题收集
1. viewport <meta name="viewport" content="width=device-width,initial-scale=1.0,mi ...
- [转]编译防火墙——C++的Pimpl惯用法解析
impl(pointer to implementation, 指向实现的指针)是一种常用的,用来对“类的接口与实现”进行解耦的方法.这个技巧可以避免在头文件中暴露私有细节(见下图1),因此是促进AP ...
- JDK1.8源码ArrayList
线程不安全的,如果要想线程安全必须在创建的时候就采用线程安全的方式创建: List list = Collections.synchronizedList(new ArrayList(...)); 引 ...