您的位置:首页 > 编程语言 > Java开发

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

2017-04-08 21:22 302 查看

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

教材学习内容总结

在只有Lambda表达式的情况下,参数的类型必须写出来,如果有目标类型的话,在编译程序可推断出类型的情况下,就可以不写出Lambda表达式的参数类型。

Lambda表达式本身是中性的,不代表任何类型的实例,同样的Lambda表达式,可用来表示不同目标类型的对象操作。

JDK8的Lambda并没有导入新类型来作为Lambda表达式的类型,而是就现有的interface语法来定义函数接口,作为Lambda表达式的目标类型。

Epoch为某个特定时代的开始,时间轴上某一瞬间。

取得系统时间的方法之一是使用System,currentTimeMillis()方法,返回的是long类型整数。

Date实例基本上建议只用来当做时间轴上的某一瞬间。

ofDays(),ofMonths(),ofWeeks()其实是Period的静态方法,他们会返回period实例。

新时间日期处理API的主要套件命名为java.time。

plus方法接受java.time.temporal.TemporalAmount实例,而TemporalAmount的操作类也就是Period与Duration。实际上plus()方法也可以接受Duration实例来计算。

使用Instant的静态方法now()可以取得代表java epoch毫秒数的Instant实例。

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

问题1:书上的ZoneDataTime代码会输出两行不是时间的数字,不清楚是什么。

问题1解决方案:查阅资料知,是机器从始至今的毫秒时间Java中日期时间格式的小结

问题2:当人类时间与机器时间冲突怎么办?

问题2解决方案:使用LocalDate、LocalTime、LocalDataTime来表示用户自行设定的时间。

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



代码托管





上周考试错题总结

下面哪条命令可以把 f1.txt 复制为 f2.txt ?

A .cp f1.txt f2.txt

C .cat f1.txt > f2.tx

原因:copy是Windows下的命令。cat f1.txt > f2.tx 通过输出重定向实现了复制。

如果有以下代码段:

Thread thread = new Thread(new ________________() {

public void run() {...}

});

空白部分指定哪些类型可以通过编译?

A .Runnable

B .Thread

原因:查API文档,Thread 也实现了 Runnable 接口

调用线程的interrupt()方法 ,会抛出()异常对象?

D .InterruptedException

E .SecurityException

原因:查看帮助文档

现有:

3. import java.util.*;

4. class ForInTest {

5.static List list=new ArrayList();

6.

7.public static void main (String [] args) {

8.list. add("a"); list. add("b");list. add( "c");

9. //insert code here

System.out.print (o);

}

12. }

哪一行插入到第9行将导致输出“abc"?

D .for (Object o : list)

总结:这次的考试题对我来说十分难,首先英语出题还是有一定障碍的,其次多选题也很是难选,很多似是而非的问题就暴露出来了。

结对及互评

评分标准

正确使用Markdown语法(加1分):

不使用Markdown不加分

有语法错误的不加分(链接打不开,表格不对,列表不正确...)

排版混乱的不加分

模板中的要素齐全(加1分)

缺少“教材学习中的问题和解决过程”的不加分

缺少“代码调试中的问题和解决过程”的不加分

代码托管不能打开的不加分

缺少“结对及互评”的不能打开的不加分

缺少“上周考试错题总结”的不能加分

缺少“进度条”的不能加分

缺少“参考资料”的不能加分

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

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

本周有效代码超过300分行的(加2分)

一周提交次数少于20次的不加分

其他加分:

周五前发博客的加1分

感想,体会不假大空的加1分

排版精美的加一分

进度条中记录学习时间与改进情况的加1分

有动手写新代码的加1分

课后选择题有验证的加1分

代码Commit Message规范的加1分

错题学习深入的加1分

点评认真,能指出博客和代码中的问题的加1分

结对学习情况真实可信的加1分

扣分:

有抄袭的扣至0分

代码作弊的扣至0分

迟交作业的扣至0分

点评模板:

博客中值得学习的或问题:

xxx

xxx

...

代码中值得学习的或问题:

xxx

xxx

...

基于评分标准,我给本博客打分:XX分。得分情况如下:xxx

参考示例

点评过的同学博客和代码

本周结对学习情况

20155203

结对照片



结对学习内容

主要互相交流了实验的感受,检查出了实验中的一些错误,并改正。比如我实验中没有对于输入错误的检验,结对伙伴提醒了我使用try...catch来捕捉错误。

上周博客互评情况

20155330

20155333

20155117

20155231

20155324

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

本周的体会主要是关于实验,首先完成一个java程序还不是一件容易的事,有的时候甚至简单的输入都会出错。这是关于语法,还有就是思维,很难从c语言的程序思路转变过来,以后还要多加练习。

学习进度条

代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时
第一周33/331/118/18
第二周124/1572/216/34
第三周531/6893/320/54
第四周550/12394/422/76
第五周847/20865/518/94
第六周1300/33866/620/114
第七周655/40417/716/130
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。

耗时估计的公式

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

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

计划学习时间:20小时

实际学习时间:16小时

改进情况:

这周学习内容较少,实践的时间占了不少,慢慢要转变成这样才会真的有成效。

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

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

参考资料

Java学习笔记(第8版)

《Java学习笔记(第8版)》学习指导

Java中日期时间格式的小结
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: