2016-2017-20155329 《Java程序设计》第7周学习总结

学号 2016-2017-20155329 《Java程序设计》第7周学习总结

教材学习内容总结

时间的度量
  • 格林威治标准时间(GMT时间)
  • 世界时(UT)
  • 国际原子时(TAI)
  • 世界协调时间(UTC)
  • Unix时间
  • epoch

java.util.Date类

  • java.util提供了Date类来封装日期和时间。实例化Date类的两个构造函数,

  • Date();--当前时间

  • Date(long millisec);--距离格林威治时间1970年1月1日millisec毫秒的时间

使用DateFormat格式化日期

import java.util.;
import java.text.
;

public class DateDemo {
public static void main(String args[]) {

  Date now = new Date( );
  SimpleDateFormat ft = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");

  System.out.println("Current Date: " + ft.format(now));
//Current Date: 火 2016.11.01 at 01:37:56 午後 CST

} }

简单的DateFormat格式化编码、

Calendar类

创建一个Canlendar对象---

Calendar c = Calendar.getInstance();//默认是当前日期

创建一个指定日期的Canlendar对象

Calendar c1= new Calendar.getIntance();

Calendar类对象信息的设置
Set设置

如:

Calendar c1 = Calendar.getInstance();
调用:

public final void set(int year,int month,int date)
c1.set(2009, 6 - 1, 12);//把Calendar对象c1的年月日分别设这为:2009、6、12
利用字段类型设置

如果只设定某个字段,例如日期的值,则可以使用如下set方法:

public void set(int field,int value)
把 c1对象代表的日期设置为10号,其它所有的数值会被重新计算

c1.set(Calendar.DATE,10);
把c1对象代表的年份设置为2008年,其他的所有数值会被重新计算

c1.set(Calendar.YEAR,2008);
其他字段属性set的意义以此类推

Add设置

Calendar c1 = Calendar.getInstance();
把c1对象的日期加上10,也就是c1也就表示为10天后的日期,其它所有的数值会被重新计算

c1.add(Calendar.DATE, 10);
把c1对象的日期减去10,也就是c1也就表示为10天前的日期,其它所有的数值会被重新计算

c1.add(Calendar.DATE, -10);
   

## 教材学习中的问题和解决过程
- 问题1:add() 与 roll() 的区别
- 问题1解决方案:取得add()实例后,用add()方法改变Calender时间,相当于进位加减法,而roll()是对日期中某一字段进行加减,也就是不进位加减法吧。
- 问题2:UTC的闰秒修正具体是怎么进行的
- 问题2解决方案:是指为保持协调世界时接近于世界时时刻,由国际计量局统一规定在年底或年中(也可能在季末)对协调世界时增加或减少1秒的调整。闰秒一般加在公历年末或公历六月末
- ...

## 代码调试中的问题和解决过程
- 问题1:上周实验电脑没电用室友的电脑编写实验代码,然后拷贝优盘上,后面放到自己电脑上就不能编译了
![](http://images2015.cnblogs.com/blog/1071583/201704/1071583-20170409160006644-1899729645.png)

- 问题1解决方案:这是一个编码问题,和程序本身无关,人眼看不见,但是计算机能看见,所以不能编译通过。   我是再一次完完整整的在自己电脑中又敲了一遍这些代码,编译就通过了
- ...

## [代码托管](码云http://git.oschina.net/学习项目链接)

(statistics.sh脚本的![](http://images2015.cnblogs.com/blog/1071583/201704/1071583-20170409155805035-1166630086.png)
运行结果截图)

## 上周考试错题总结
-下面哪条命令可以把 f1.txt 复制为 f2.txt ?(AC)
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

15.Assuming / is the root directory, which of the following are true statements? (Choose all that apply.)(A)
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.

9.现有
```
class Calc {
public static void main(String [] args) {
try {
    int x = Integer.parselnt ("42a") ;
//insert code here
    System.out.print ("oops");
}
}
}
```

下面哪行分别插入到第五行,会导致输 "oops" ?(AC)

A .
catch (IllegalArgumentException e) {

B .
} catch (IllegalStateException c) {

C .
} catch (NumbelFormatException n) {

D .
} catch (ClassCastException c) {

## 结对及互评
我的结对伙伴是5327李百乾。本周学习任务主要是13章,时间与日期。在本周内我们在一起学习了十三章内容,了解掌握了Calendar。
### 评分标准

1. 正确使用Markdown语法(加1分):
    - 不使用Markdown不加分
    - 有语法错误的不加分(链接打不开,表格不对,列表不正确...)
    - 排版混乱的不加分
2. 模板中的要素齐全(加1分)
    - 缺少“教材学习中的问题和解决过程”的不加分
    - 缺少“代码调试中的问题和解决过程”的不加分
    - [代码托管](链接)不能打开的不加分
    - 缺少“结对及互评”的不能打开的不加分
    - 缺少“上周考试错题总结”的不能加分
    - 缺少“进度条”的不能加分
    - 缺少“参考资料”的不能加分

3. 教材学习中的问题和解决过程, 一个问题加1分

4. 代码调试中的问题和解决过程, 一个问题加1分

5. 本周有效代码超过300分行的(加2分)
    - 一周提交次数少于20次的不加分
    
6. 其他加分:
    - 周五前发博客的加1分
    - 感想,体会不假大空的加1分
    - 排版精美的加一分
    - 进度条中记录学习时间与改进情况的加1分
    - 有动手写新代码的加1分
    - 课后选择题有验证的加1分
    - 代码Commit Message规范的加1分
    - 错题学习深入的加1分
    - 点评认真,能指出博客和代码中的问题的加1分
    - 结对学习情况真实可信的加1分
    
7. 扣分:
    - 有抄袭的扣至0分
    - 代码作弊的扣至0分
    - 迟交作业的扣至0分

### 点评模板:
- 博客中值得学习的或问题:
    - 
    - xxx
    - ...
- 代码中值得学习的或问题:
    - xxx
    - xxx
    - ...
- 基于评分标准,我给本博客打分:XX分。得分情况如下:xxx

- [参考示例](http://www.cnblogs.com/haoliberale/p/6580822.html#3650972) 

### 点评过的同学博客和代码
- 本周结对学习情况 
    - [结对同学学号5327](博客链接)
    - 结对照片
       ![](http://images2015.cnblogs.com/blog/1071583/201704/1071583-20170409160513144-259490253.png)

    - 结对学习内容
        - Calendar
        - ...
- 上周博客互评情况
    - [学号20155320](博http://www.cnblogs.com/ljq1997/客链接)
    - [学号20155233](博客http://www.cnblogs.com/l20155233/p/6659608.html链接)
    - [学号20155214](博客http://www.cnblogs.com/besti155214/p/6659157.html链接)
    - [学号20155334](博客链http://www.cnblogs.com/bestixx/p/6659636.html接)
    - ...
    
## 其他(感悟、思考等,可选)

学习Java已经半个学期了,回想半年Java课,最大的收获是自我学习能力增强了不少,但还是有遗憾,在半年的学习里Java并没有多少进步。总感觉时间不够用,尽力就好,能学懂多少是多少吧。

## 学习进度条

|            | 代码行数(新增/累积)| 博客量(新增/累积)|重要成长|
| --------   | :----------------:|:----------------:|:---------------:  |:-----:|
| 目标        | 3000行            |   30篇           |       |
| 第七周      | 410/1180           |  9/15           |   
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。
耗时估计的公式
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:[软件工程软件的估计为什么这么难](http://www.cnblogs.com/xinz/archive/2011/04/05/2005978.html),[软件工程 估计方法](http://www.cnblogs.com/xinz/archive/2011/04/06/2007294.html)

- 计划学习时间:14小时

- 实际学习时间:22小时

- 改进情况:略差

(有空多看看[现代软件工程 课件 
软件工程师能力自我评价表](http://www.cnblogs.com/xinz/p/3852177.html))


## 参考资料

-  [Java学习笔记(第8版)](http://book.douban.com/subject/26371167/) 

-  [《Java学习笔记(第8版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html)
-  ...
posted @ 2017-04-09 16:05  20155329胡佩伦  阅读(210)  评论(3编辑  收藏  举报