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
  • 解决方案:java中Scanner类nextLine和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周学习总结的更多相关文章

  1. 20155225 2016-2017-2 《Java程序设计》第九周学习总结

    20155225 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 了解JDBC架构 使用JDBC API JDBC是用于执行SQL的解决方案,开 ...

  2. 20155225 2016-2017-2 《Java程序设计》第一周学习总结

    20155225 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 JVM(java virtual machine)就是java虚拟机,我的理解就是编译运行j ...

  3. 20155326 2016-2017-2 《Java程序设计》第九周学习总结

    20155326 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 1.撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找. 2.JDBC目的 ...

  4. 20155229 2016-2017-2 《Java程序设计》第九周学习总结

    20155229 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 JDBC(Java DataBaseConnectivity)即java数据库连接 ...

  5. 20155313 2016-2017-2 《Java程序设计》第一周学习总结

    20155313 2016-2017-2 <Java程序设计>第一周学习总结 教材学习内容总结 本周的Java学习进入了一个全新的阶段,对于我这样的并没有每天花费时间钻研的同学来说,最后几 ...

  6. 20145231 《Java程序设计》第一周学习总结

    20145231 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台Java SE,Java EE,Java ME.其中,Java SE是我们学习的基础. Java S ...

  7. 20145238-荆玉茗 《Java程序设计》第一周学习总结

    20145238 <Java程序设计>第一周学习总结 教材学习内容总结 Java三大平台:由于java领域的应用越来越广,根据不同级别的应用开发区分了不同的应用版本,后正式更名为Java ...

  8. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  9. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  10. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

随机推荐

  1. interface思考练习一

    参考了这篇文章,博主超级优秀,看他的最好,我只是写了点自己看他的博文学到的东西.CSDNzdwzzu2006 接口这东西认真学是在第一次构建工程的时候,很晕菜,原来学SE时不扎实,导致东西都不会用,看 ...

  2. Chapter10(泛型算法)--C++Prime笔记

    关键:算法通过在迭代器上进行操作来实现类型无关.算法不改变所操作序列的大小. 1.算法大多都定义在algorithm头文件中,标准库还在头文件numeric中定义了一组数值泛型算法. 2.泛型算法永远 ...

  3. [Java] 理解JVM之二:类加载步骤及内存分配

    一.类加载器 ClassLoader 能根据需要将 class 文件加载到 JVM 中,它使用双亲委托模型,在加载类的时候会判断如果类未被自己加载过,就优先让父加载器加载.另外在使用 instance ...

  4. wepy

    npm install -g cnpm --registry=https://registry.npm.taobao.org https://blog.csdn.net/qq_40414159/art ...

  5. uboot常用命令详解

    dnw:在进入系统之前进入指令行,输入该指令可下载烧录文件. re:重新启动嵌入式系统. printenv:打印当前系统环境变量. setenv:设置环境变量,格式:setenv name value ...

  6. vue 倒计时返回首页

    1. vue页面15分钟无操作时返回首页 2. 基于vue的倒计时demo 3. 在vue2.0项目中一个简单的倒计时功能 4. vue重新发送验证码 5. 表格<td>里面文字垂直显示

  7. windows git gui右键sublime打开当前文件编辑

    git安装目录\Git\libexec\git-core\git-gui.tcl的 proc create_common_diff_popup 下追加: $ctxm add command \ -la ...

  8. 深入浅出JavaScript之跨域总结

    什么是跨域 1.document.domain+iframe的设置 2.动态创建script 3.利用iframe和location.hash 4.window.name实现的跨域数据传输 5.使用H ...

  9. ASP.NET 前台Javascript调用后台代码 / 后台调用前台Javascript

    1:ASP.NET 前台Javascript调用后台代码 1.1:前台Javascript <script> function CallCs() { var str = "< ...

  10. 2015.07.15——prime素数

    prime素数 1.素数也叫质数,定义是一个数只能被1和它自身整除. 素数从2开始,0,1都不是素数. 2.素数的判断(C++) 3.给定某个数,求小于这个数的所有素数 2.素数的判断(C++) bo ...