爲什麼java的時間從1970年1月1日開始

熟悉java的你,應該對1970年1月1日很熟悉吧。java裡的時間都是以1970年1月1日為起始的。那你有沒有好奇過,為啥java的時間要以1970年1月1日開始呢?我找了一點資料,發現還有點意思,分享一下。

為什麼java的時間從1970年1月1日開始

其實這個問題很簡單,當初的操作系統都是32位的,所以時間也是用32位來表示的。所以所能表示的最大值就是2^32-1=2147483647。也就是2147483647/(365 * 24 * 60 * 60)=68.1年。而當時最早的unix操作系統是由AT&T貝爾實驗室的三位科學家在1969年開發的,所以當時他們為了讓時間儘可能的多利用起來,便用了下一年,即1970年1月1日作為開始。所以目前32位系統的時間最多能支撐到2038年1月19日3時14分7秒。到了這一天的凌晨3點14分8秒,時間表示就會因為溢出變為1901年12月13日20時45分52秒。所以32位的系統到時候就不好玩了,還是及早使用64位的系統為妙。

java因為也是遵循unix的這套時間系統,所以也是這樣啦。


分享到:


相關文章: