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

教材学习内容总结

  • Date/DateFormat

    • Date是日期类,可以精确到毫秒。

      • 构造方法

        Date()

        Date(long time)

      • 成员方法

        getTime()

        setTime(long time)

      • 日期和毫秒值的相互转换

    • DateFormat针对日期进行格式化和针对字符串进行解析的类,但是是抽象类,所以使用其子类SimpleDateFormat

      • SimpleDateFormat(String pattern) 给定模式yyyy-MM-dd HH:mm:ss

      • 日期和字符串的转换

        • Date -- String:format()

        • String -- Date:parse()

  • Calendar

    • 日历类

      • 封装了所有的日历字段值,通过统一的方法根据传入不同的日历字段可以获取值
    • 得到一个日历对象

      • Calendar rightNow = Calendar.getInstance();
      • 本质返回的是子类对象
    • 成员方法

      • 根据日历字段得到对应的值

      • 根据日历字段和一个正负数确定是添加还是减去对应日历字段的值

      • 设置日历对象的年月日

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

  • 问题1:课本P430代码在IDEA上执行结果见下图,与书本上不一致,书本上的应该是不对的

其次对于此代码上显示的LONG与SHORT不太理解是什么意思?

  • 问题1解决方案:通过查API得知这些都是不同长度的常数,是给定的格式设置样式

  • 问题2:课本P435提到了clone()、before()、after()方法,不是很清楚这几个方法是什么意思

  • 问题2解决方案:通过查询API得知clone()方法其实是复写了Object父类方法,其结果是返回了该对象的一个副本

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

  • 问题1:课本P436程序TimeZoneDemo执行结果中时间ID一栏是Asia/Shanghai,不应该是Asia/Beijing吗?

  • 问题1解决方案:通过网上的资料显示,Java所支持的所有时区里没有Asia/Beijing,对于中国大陆时区的而言,显示的都是Asia/Shanghai

代码托管

上周考试错题总结

  • 错题1:下面哪条命令可以把 f1.txt 复制为 f2.txt ?

    A .cp f1.txt f2.txt

    B .copy f1.txt f2.txt

    C .cat f1.txt > f2.tx

    D .cp f1.txt | f2.tx

    E .copy f1.txt | f2.tx

  • 原因:我选择了AB。主要是对输出重定向不太了解

  • 理解情况:正确答案应为AC,copy是Windows下的命令。cat f1.txt > f2.tx通过输出重定向实现了复制

  • 错题2:Linux中,使用()命令可以更改一个文件的权限。

    A .attrib

    B .change

    C .chmod

    D .file

  • 原因:望文生义,因为更改就是用change。。

  • 理解情况:attrib是Windows下的命令,没change这个命令,file是用来查看文件类型的

  • 错题3:下面代码中共有()个线程?

public class ThreadTest {
public static void main(String args[]){
MyThread myThread =new MyThread();
Thread t1=new Thread(myThread);
Thread t2=new Thread(myThread);
t1.start();
t2.start();
}
} class MyThread extends Thread {
...
}

A .1 B .2 C .3 D .4

  • 原因:忘记了还有主线程

  • 理解情况:2个自定义的线程和1个主线程,共三个

  • 错题4:Assuming / is the root directory, which of the following are true statements? (Choose all that apply.)

    A ./home/parrot is an absolute path.

    B ./home/parrot is a directory.

    C ./home/parrot is a relative path.

    D .The path pointed to from a File object must exist.

    E .The parent of the path pointed to by a File object must exist.

  • 原因:没看懂题目

  • 理解情况:Paths that begin with the root directory are absolute paths, so A is correct and C is incorrect. B is incorrect because the path could be a file or directory within the file system. A File object may refer to a path that does not exist within the file system, so D and E are incorrect.

  • 错题5:What is the result of executing the following code? (Choose all that apply.)

String line;
Console c = System.console();
Writer w = c.writer();
if ((line = c.readLine()) != null)
w.append(line);
w.flush();

A .The code runs without error but prints nothing.

B .The code prints what was entered by the user.

C .An ArrayIndexOutOfBoundsException might be thrown.

D .A NullPointerException might be thrown.

E .An IOException might be thrown.

F .The code does not compile.

  • 理解情况:This is correct code for reading a line from the console and writing it back out to the console, making option B correct. Options D and E are also correct. If no con- sole is available, a NullPointerException is thrown. The append() method throws anIOException.

  • 错题6:What are some reasons to use a character stream, such as Reader/Writer, over a byte stream, such as InputStream/OutputStream? (Choose all that apply.)

    A .More convenient code syntax when working with String data

    B .Improved performance

    C .Automatic character encoding

    D .Built-in serialization and deserialization

    E .Character streams are high-level streams

    F .Multi-threading support

  • 理解情况:Character stream classes often include built-in convenience methods for working withString data, so A is correct. They also handle character encoding automatically, so C is also correct. The rest of the statements are irrelevant or incorrect and are not properties of all character streams.

结对及互评

点评过的同学博客和代码

其他(感悟、思考等,可选)

Java后续学习的知识使用起来还是比较生疏,有的时候对某些以为自己懂的概念还是比较模糊,所以之后对于Java的学习,还是需要多实践,在实践中总结经验,提升能力。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 1/ 20/20 对IDEA、git、JDK、JVM有了更多的了解,面对学习过程中遇到的困难学会自己主动地寻找办法去解决
第二周 1/2 18/38 掌握了Java中的基本运算符和基本语句
第三周 1/3 22/60 对面向对象、封装、构造函数等重要知识点有了初步理解,学会自主学习,遇到困难的时候从多方面寻找资料以求答案
第四周 1/4 22/60 对继承和多态了一定程度的理解,并学会使用多态来提高代码的复用性
第五周 706/2639 1/5 25/85 对异常以及集合框架的学习
第六周 735/3194 1/6 28/113 对IO流,多线程以及并行API的学习
第七周 428/3474 1/7 18/131 对Date的学习

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

耗时估计的公式

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

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

  • 计划学习时间:15小时

  • 实际学习时间:18小时

  • 改进情况:还是要扎实学习之前的知识,避免对后续学习产生过多不良影响

(有空多看看现代软件工程 课件

软件工程师能力自我评价表
)

参考资料

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

  1. 201521123027 <java程序设计>第七周学习总结

    1.本周学习总结 2.书面作业 Q1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 答: 源代码: //contains()方法 public boolean c ...

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

    20155321 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 JDBC简介 厂商在实现JDBC驱动程序时,依方式可将驱动程序分为四种类型: JDBC-OD ...

  3. 201871010106-丁宣元 《面向对象程序设计(java)》第七周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第七周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

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

    20155334 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章:整合数据库 16.1 JDBC入门 JDBC(Java DataBase Conn ...

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

    20155330 2016-2017-2 <Java程序设计>第九周学习总结 教材学习内容总结 学习目标 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛 ...

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

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

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

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

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

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  9. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

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

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

随机推荐

  1. <构建之法>第一二三章感悟

    第一章: 看了大概了解软件从一个想法到最终成品的一个过程.软件先是由一个想法引出的,有那个想法,你需要一个工具去做什么,根据自己想要的功能大概做一个能实现基本功能的软件,对客户提出的要求进行完善,实现 ...

  2. 个人作业 - Week2 - 代码复审

    代码复审Check List 概要部分 代码能符合需求和规格说明么? 能完成1~1000000个数独的求解与生成,并能处理异常输入,满足需求. 代码设计是否有周全的考虑? 为输入单独开设了一个输入检测 ...

  3. scrapy-yield scrapy.Request()不执行、失效、Filtered offsite request to错误 [转]

    scrapy错误:yield scrapy.Request()不执行.失效.Filtered offsite request to错误.首先我们在Request()方法里面添加这么一个东东: yiel ...

  4. PHP 官方发行版扩展下载地址

    PHP扩展下载 稳定发行版资源下载地址: https://windows.php.net/downloads/pecl/releases/ 常用扩展: 持续更新中 ... igbinary序列化/反序 ...

  5. vector(char*)和vector(string)

    vector<char*> ch; vector<string> str; for(int i=0;i<5;i++) { char *c=fun1();//通过这个语句产 ...

  6. js & 快捷键 & vue bind bug

    js & 快捷键 & vue bind bug how to prevent addEventListener bind many times solution dataset &am ...

  7. 用SQL查询方式显示GROUP BY中的TOP解决方法[转]

    用SQL查询方式显示GROUP BY中的TOP怎样用一个SQL语句来显示 分组后每个组的前几位 比如把一个学校所有学生的成绩按班级分组,再显示每个班级前五名的信息. 班级     学生   成绩 一班 ...

  8. js复制内容到剪切板

    注意第一部分的内容不兼容Safari,全兼容的请使用第二部分方法 第一部分 查看demo请点  这里. 原生js复制指定内容到剪切板,超简单的实现方式, 实现思路如下: 1.创建一个input,把想要 ...

  9. 初次使用http打不开页面,使用https打开过后使用http协议又能正常访问

    http协议为什么打不开https站点 在访问一个https的站点,比如 https://www.aaa.com,首次访问时,访问的地址是 http://www.aaa.com,(不加S),出现的是网 ...

  10. linq 获取实体列表中的某个字段返回ilist<string>

     var list = list.Select(t => t.Field<string>("列名")).ToList();  var list = list.Se ...