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

教材学习内容总结

Chapter 4

  • 要产生对象必须先定义类,类是对象的设计图,对象时类的实例。
  • 一个原始码中可以有很多个类定义,但只能有一个是公开类,且文档中的主文档名必须与公开类名称相同。
  • 构造函数是与类名称同名的方法。
  • 两个基本的标准类:java.util.Scanner与java.math.BigDecimal。
    • 使用java.util.Scanner

      • 一开始使用import。
      • nextxxx()方法。
    • 使用java.math.BigDecimal/
      • 小心使用浮点数,别用==直接比较浮点数运算结果。
      • 使用java.math.BigDecimal类可达到更好的精准度。
  • == 与 equals()有区别。
  • .XxxValue打包器。
  • Integer提供compareTo()方法,同0,小-1,大1。
  • 自动装箱、拆箱的内幕:
    • e.g. 结果:i1 != i2
Integer i1 = 100;
Integer i2 = 200;
if (i1 == i2) {
System.out.println("i1 == i2");
}
else {
System.out.println("i1 != i2");
}
  • 使用System.out.println()代替\n。
  • 在Java中只要看到new,一定就是建立对象。本章定义函数的语法代表了数组就是对象。
  • System.arraycopy(来源数组,来源起始索引,目的数组,目的起始索引,复制长度)。
  • Arrays.copyOf();
  • 上述两个复制没有复制出对象,是浅层复制。
  • 数组一旦建立,长度就固定了。
  • 字符串无论在程序代码中出现几次,JVM都指挥建立一个String实例。比较时不能使用==,而要用equals()。
  • 字符串对象一旦建立,就无法更改对象中任何内容。
  • 使用javac指令没有指定-encoding选项时,会使用操作系统默认编码。

Chapter 5

  • 取值以get开头开头,之后接上首字母大写的单词。
  • 若无申明权限修饰的成员,有“范围权限”。如果想在其他包的类程序代码中存取某包的类或对象成员必须是公开成员,在Java中药使用public加以声明。
  • 创建对象时需初始化。
  • 除了被声明static处,均可用this。
  • 若对象数据成员被声明为final,但未明确使用=确定值,那表示延迟对象成员值的指定,在构造函数执行流程中,一定要有对该数据成员指定值得动作。
  • static成员属于类。
  • import static要注意名称冲突问题。

教材学习中的问题和解决过程

  • 跟着教材循序渐进,仔细看没遇到什么问题,但是如果跳了一点点看,可能前面一些关键的点就会被遗漏,尤其是本书中有一些小错误,很容易出现错误。我遇到了一些类似的问题,回头看看之前一点的内容也就解决了。因为我觉得那些错误很低级,没有什么意义,我就没有截图了。

代码调试中的问题和解决过程

  • 我把System.out.printf()看成了System.out.println(),导致出错



代码托管

上周考试错题总结

  • Linux Bash中,查找当前目录中前天创建的Java文件的命令是(find . –name *.java -ctime 2)。
  • 这题上一次考试做过类似的,所以这次考试看到了就大意了,没看完题就填答案。
  • 判断: Java中, 数字235.00的类型是float. (X)
  • 没有正确理解float型。
  • ~0b1011的十进制值是(-12)
  • 考虑了取反,但是没有取补码,计算机导论还需要巩固。
  • Java中的字符长度是(2)个字节。
  • 记错了,现在已经记住了。
  • Java中,非零数字等价于true.(X)
  • 没有正确理解Boolean。
  • System.out.printf("%b", 11)的输出结果是0b1011 (X)
  • 没理解%b是Boolean型,现在已经掌握。
  • byte a=3;byte b=4; 那么 a+b的类型也是byte.(X)
  • 没记住这个会转换成int型,现已掌握。

其他

  • 老师说前六周我们最后不要使用IDEA。起初我有点小抵触,明明借助集成开发环境能提高效率干嘛不让我们用,反复敲那些没多大用的东西。但我还是按照老师的意思去做了,我发现每次敲那些框架的过程中,我会对之前学的知识有些回顾,比如package、import、public class、三种prin还能让我们在实践掌握vim的用法。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 18/18 1/1 10/10
第二周 172/190 2/3 18/38
第三周 464/654 3/4 23/61

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

参考资料

20155212 2016-2017-2 《Java程序设计》第3周学习总结的更多相关文章

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

    20155306 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 16.1 JDBC入门 Java语言访问数据库的一种规范,是一套API ...

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

    20155236 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC入门 1.JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标 ...

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

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

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

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

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

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

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

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

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

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

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

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

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. [BZOJ 4555][Tjoi2016&Heoi2016]求和

    题意 给定 $n$ , 求下式的值: $$ f(n)= \sum_{i=0}^n\sum_{j=0}^i\begin{Bmatrix}i\\ j\end{Bmatrix}\times 2^j\time ...

  2. 015.2Condiction接口

    Condiction对象能够让线程等待,也能够唤醒相应的线程,通过下面方法,具体看代码:await();signal();signalAll(); 使用步骤:1)创建锁2)通过锁拿到Condictio ...

  3. iOS js 使用与JSContext

    JSContext:js执行环境,包含了js执行时所需要的所有函数和对象: js执行时,会在执行环境搜索需要的函数然后执行,或者保存传入的变量或函数: JSContext *jsContext = [ ...

  4. CentOS学习:第一天

    阿里的一台ECS还有一个月到期,就趁这一个月的时间,用它来学习一下梦寐已久的CentOS. 由于历史原因,一直使用Windows环境,还从没接触过任何一种Linux系统. 在服务器端部署MySQL/T ...

  5. 随手练——HDU-2037 、P-2920 时间安排(贪心)

    普通时间安排 HDU-2037 :http://acm.hdu.edu.cn/showproblem.php?pid=2037 选取结束时间早的策略. #include <iostream> ...

  6. 如何在ubuntu中安装CP-ABE

    cpabe依赖pbc,pbc依赖gmp,gmp依赖M4.bison.flex,所以先安装后面的 安装m4 $   sudo apt-get install m4 安装 flex 安装 bison 1 ...

  7. IntelliJ IDEA编写的spark程序在远程spark集群上运行

    准备工作 需要有三台主机,其中一台主机充当master,另外两台主机分别为slave01,slave02,并且要求三台主机处于同一个局域网下 通过命令:ifconfig 可以查看主机的IP地址,如下图 ...

  8. windows环境安装docker,并下载lamp镜像

    1.PC系统:windows10专业版 2.开启Hyper-V 此电脑->右击->属性->控制面板主页->(查看方式为小图标)程序和功能->右上方启动或关闭windows ...

  9. arcgis js api proxy java 版本配置

    <?xml version="1.0" encoding="utf-8" ?> <ProxyConfig allowedReferers=&q ...

  10. 软工之404 Note Found团队

    如果记忆是一个罐头的话,我希望这一罐罐头不会过期----<重庆森林> 404 Note Found Team 如果记忆是一个备忘录的话,别说了,它不会过期----<404 Note ...