java .class文件为什么以CAFEBABE开头?
生活随笔
收集整理的這篇文章主要介紹了
java .class文件为什么以CAFEBABE开头?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一個文件里面的內容到底是啥?用慣了Windows的人肯定是看后綴。但是后綴這個東西說改就改,不可靠。所以,最保險的還是把文件類型信息寫到文件里面,通常來說,也就是寫到文件開頭的那幾個字節(jié)。這是最方便,最快捷的用來辨別一個文件真實內容的方法。下面舉幾個例子:
為什么是CAFEBABE呢?這個只能猜了,首先,16進制里面的字母只有A到F,十分的有限。Java一直以咖啡為代言,CAFEBABE可以認為是 Cafe Babe,讀音上和Cafe Baby很近。所以這個也許就是代表Cafe Baby的意思。
不信可以用二進制文本編輯器打開看看,比如notepad++:
PK代表的不是游戲里的Person Kill,而是zip算法(PKZIP算法)的發(fā)明者菲爾·卡茨(Phil Katz)名字首字母的縮寫。
Phil Katz 在當時也算是個大牛級人物,不想為了一個壓縮軟件付錢就一跺腳自己寫了一個更好的壓縮算法,而且還完全無償開放這個標準。不過,Phil Katz成就了 zip算法,zip算法卻沒有拯救Phil Katz。zip沒有給他帶來一分錢,這位無私奉獻的工程師生活不順,死于酗酒,甚至現在連一張像樣的照片都流傳下來,一聲嘆息呀。
- Java class文件的魔數
為什么是CAFEBABE呢?這個只能猜了,首先,16進制里面的字母只有A到F,十分的有限。Java一直以咖啡為代言,CAFEBABE可以認為是 Cafe Babe,讀音上和Cafe Baby很近。所以這個也許就是代表Cafe Baby的意思。
- 文本文件的BOM
- Zip文件的P.K.
不信可以用二進制文本編輯器打開看看,比如notepad++:
PK代表的不是游戲里的Person Kill,而是zip算法(PKZIP算法)的發(fā)明者菲爾·卡茨(Phil Katz)名字首字母的縮寫。
Phil Katz 在當時也算是個大牛級人物,不想為了一個壓縮軟件付錢就一跺腳自己寫了一個更好的壓縮算法,而且還完全無償開放這個標準。不過,Phil Katz成就了 zip算法,zip算法卻沒有拯救Phil Katz。zip沒有給他帶來一分錢,這位無私奉獻的工程師生活不順,死于酗酒,甚至現在連一張像樣的照片都流傳下來,一聲嘆息呀。
總結
以上是生活随笔為你收集整理的java .class文件为什么以CAFEBABE开头?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 大学最后一个学习的半年,Do crazi
- 下一篇: numpy数据筛选