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. C++:(拷贝,继承,智能指针)练习

    #include <iostream> #include <string> #include <memory> #include <functional> ...

  2. P3866 [TJOI2009]战争游戏

    P3866 [TJOI2009]战争游戏 题目背景 小R正在玩一个战争游戏.游戏地图是一个M行N列的矩阵,每个格子可能是障碍物,也可能是空地,在游戏开始时有若干支敌军分散在不同的空地格子中.每支敌军都 ...

  3. Hadoop生态圈-Hive的自定义函数之UDF(User-Defined-Function)

    Hadoop生态圈-Hive的自定义函数之UDF(User-Defined-Function) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.

  4. Spring Cloud微服务实战阅读笔记(一) 基础知识

    本文系<Spring Cloud微服务实战>作者:翟永超,一书的阅读笔记. 一:基础知识   1:什么是微服务架构     是一种架构设计风格,主旨是将一个原本独立的系统拆分成多个小型服务 ...

  5. canvas 入门

    <canvas>是HTML5新增的,是可以使用脚本(JavaScript)在其中绘制图像的HTML元素. canvas是由HTML代码配合高度和宽度属性而定义出的可绘制区域,JavaScr ...

  6. Redis集群部署(redis + cluster + sentinel)

    概述说明 说明:本次实验采用c1.c2.c3三台虚拟机完成,每台服务器上都部署一个master.一个slave和一个sentinel.当某主节点的挂了,相应的从节点替位:当某主节点及主节点对应的从节点 ...

  7. Http 学习笔记(一)

    介绍 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议.. ...

  8. 一个highcharts混合图Demo

    公司要我做一个highcharts的mockup,其实半个小时就能做完了,我做了将近两个小时,唉!不过还好,总算把东西学会了.勤能补拙! 把代码贴上来 布局很简单,一个div里套两个div,给好id, ...

  9. Spring MVC表单防重复提交

    利用Spring MVC的过滤器及token传递验证来实现表单防重复提交. 创建注解 @Target(ElementType.METHOD) @Retention(RetentionPolicy.RU ...

  10. 20155233 2016-2017-2 《Java程序设计》第7周学习总结

    20155233 2016-2017-2 <Java程序设计>第7周学习总结 学习目标 了解Lambda语法 了解方法引用 了解Fucntional与Stream API 掌握Date与C ...