20145237 《Java程序设计》第七周学习总结

教材学习内容总结

第十三章   一、认识时间与日期   1.时间的度量   在正式认识Java提供了哪些时间处理API之前,得先来了解一些时间、日期的历史问题,这样你才会知道,时间日期确实是个很复杂的问题,而使用程序来处理时间日期,也不仅仅是使用API的问题。   a.格林威治标准时间:格林威治标准时间简称GMT时间,一开始是参考自格林威治皇家天文台的标准太阳时间,格林威治标准时间的正午是太阳抵达天空最高点之时,格林威治标准时间常被不严谨的当成是UTC时间。   b.世界时:世界时是借由观测远方星体跨过子午线而得,也称UT,这会比观察太阳来得准确一些。1972年引入UTC之前,GMT与UT是相同的。   c.国际原子时:虽然观察远方星体会比观察太阳来得准确,不过UT基本上仍受地球自转速度影响而会有所误差。1967年定义的国际原子时(TAI),将秒的国际单位定义为铯原子辐射振动9192631770周耗费的时间,时间从UT的1958年开始同步。   d.世界协调时间:由于基于铯原子振动定义的秒长是固定的,然而地球自转会越来越慢,这会使得实际上 TAI时间会不断超前基于地球自转的UT系列时间,为了保持TAI与UT时间不要差距过大,因而提出了具有折衷修正版本的世界协调时间(UTC)。   e.Unix时间:Unix系统的时间表示法,定义为UTC时间1970年1月1日00:00:00为起点而经过的秒数,不考虑闰秒修正,用以表达时间轴上某一瞬间。   f.epoch:某个特定时代的开始,时间轴上某一瞬间。例如java.util.Date封装的时间信息,就是January 1,1970,00:00:00 GMT经过的毫秒数,可以简称为epoch毫秒数。   就目前来说,即使标注为GMT,实际上谈到的时间指的是UTC时间。秒的单位定义是基于TAI,也就是铯原子辐射振动次数。Unix时间是1970年1月1日00:00:00为起点而经过的秒数,不考虑闰秒。

2.年历简介:

•儒略历,现今公历的前身,用来取代罗马历,修正了罗马历隔三年设置一闰年的错误,改采四年一润。  •格里高利历改革了儒略历,由教宗Pope Gregory ⅩⅢ于1582年颁行,将儒略历1582年10月4日星期四的隔天,定为格里高利历1582年10月15日星期五。

3.认识时区   从地理上来说,由于地球是圆的,基本上一边白天另一边就是夜晚,为了让人们对时间的认知符合作息,因而设置了UTC偏移,大致上来说,经度每15度是偏移一个小时,考虑了UTC偏移的时间表示上,通常会标识Z符号。不过有些国家的领土横跨的经度很大,一个国家有多个时间反而造成困扰,因而不采取每15度偏移一小时的做法,像美国仅有4个时区,而中国,印度只采用单一时区。一年的毫秒数绝对不是单纯的 365X24X60X60X1000,更不要基于这类错误的观念来进行时间与日期运算。   13.2 认识Date与Calendar   •时间轴上瞬间的Date   •System.currentTimeMillis():如果想要取得系统时间,方法之一是使用System.currentTimeMillis()方法,返回的是long类型整数,代表1970年1月1日0时0分0秒0毫秒至今经过的毫秒数   •有人会使用Date实例来取得系统时间描述,不过Date也是偏向机器的时间观点,例如:  import java.util.*; import static java.lang.System.*;

public class DateDemo {     public static void main(String[] args) {         Date date1 = new Date(currentTimeMillis());         Date date2 = new Date();

out.println(date1.getTime());         out.println(date2.getTime());     }

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

问题: 如何计算一个程序的运行时间?

解决:

long startTime=System.currentTimeMillis();   //获取开始时间

  doSomeThing();  //测试的代码段

  long endTime=System.currentTimeMillis(); //获取结束时间

  System.out.println("程序运行时间: "+(end-start)+"ms");

本周代码托管截图

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

本周有许多实验,大部分时间都用来进行实验研究了。但是本周只有一章学习内容,所以感觉还是比较轻松的。

学习进度条

|            | 代码行数(新增/累积)| 博客量(新增/累积)|学习时间(新增/累积)|重要成长| | --------   | :----------------:|:----------------:|:---------------:  |:-----:| | 目标        | 5000行            |   30篇           | 400小时            |       | | 第七周      | 200/1230           |   2/14            | 20/110             |

20145237 《Java程序设计》第七周学习总结的更多相关文章

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

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

  2. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

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

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

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

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

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

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

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

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

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

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

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

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

  9. 20175209 《Java程序设计》第九周学习总结

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

  10. 20175317 《Java程序设计》第九周学习总结

    20175317 <Java程序设计>第九周学习总结 学前准备 首先下载XAMPP,下载完成后打开: 将前两个选项打开 在IDEA中配置驱动mysql-connector-java-5.1 ...

随机推荐

  1. MySQL的B树索引与索引优化

    MySQL的MyISAM.InnoDB引擎默认均使用B+树索引(查询时都显示为"BTREE"),本文讨论两个问题: 为什么MySQL等主流数据库选择B+树的索引结构? 如何基于索引 ...

  2. CSA Round #54 $\ $Voting

    CSA Round #54 \(\ \)Voting 题目大意: 原题网址:戳我戳我! 一次歌唱比赛中,一位歌手刚刚结束表演,评委正在打分. 一共有 \(n\) 位评委,他们每人可以打 \(1\) 分 ...

  3. [JZOJ5522] 图

    题目大意: 一个有向图,图中有\(n\)个点\(m\)条边且无重边无自环, 每秒第\(i\)条边出现的概率是\(\frac{p[i]}{100}\), 一开始\(Samjia\)在\(1\)点,每一秒 ...

  4. [Shoi2007]Vote 善意的投票

    题目描述 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神.虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来 ...

  5. 使用asyncio实现redis客户端

    redis协议格式请参考,http://doc.redisfans.com/topic/protocol.html 这里简单介绍下: *<参数数量> \r\n $<参数 的字节数量& ...

  6. 八年架构师大咖首次揭秘,年薪50W秘籍!

    序言 我是土生土长的老北京人,你们肯定觉得我很有钱,为啥呢? 因为觉得我是北京户口,其实你们错了,我的房子是靠我自己买的,父母基本上没帮到我什么,当然,我也不需要吧! 我只想说,作为一名程序员,我很自 ...

  7. sspanel 添加远程节点问题汇总

    链接数据库错误: InternalError: (1130, u"Host '97.64.40.100' is not allowed to connect to this MySQL se ...

  8. .NET微服务 容器化.NET应用架构指南(支持.NET Core2)

    介绍 企业通过使用容器,日益实现成本节约.解决部署问题并改进 DevOps 和生产操作. 通过创建 Azure 容器服务.Azure Service Fabric 等产品,同时与 Docker.Mes ...

  9. 深度剖析HashMap的数据存储实现原理(看完必懂篇)

    深度剖析HashMap的数据存储实现原理(看完必懂篇) 具体的原理分析可以参考一下两篇文章,有透彻的分析! 参考资料: 1. https://www.jianshu.com/p/17177c12f84 ...

  10. python多线程、多进程以及GIL

    多线程 使用threading模块创建线程 传入一个函数 这种方式是最基本的,即调用threading中的Thread类的构造函数,然后指定参数target=func,再使用返回的Thread的实例调 ...