接觸過 java 開發(fā)的人都知道,java 開發(fā)都是先寫一個 java 文件,然后編譯成 class 文件,最后將 class 文件放到 java 虛擬機(jī)中運(yùn)行。很多人都知道 java 文件可以直接用記事本打開,而 class 是二進(jìn)制文件無法用記事本打開。今天小編就教你 java 怎么查看源代碼(包括 class 的查看)。
?.java
? 的查看很簡單,只要使用記事本就可以打開 ?.java
? 文件。使用代碼編輯器打開可以看到語法高亮(需代碼編輯器支持),代碼查閱更加方便。
?.class
? 文件是二進(jìn)制文件,查看可以使用 WinHex 進(jìn)行查看(但二進(jìn)制數(shù)據(jù)查看毫無意義),這時候可以對 ?.class
? 文件進(jìn)行反編譯后查看。反編譯需要工具支持,小編這里使用 jd-GUI 進(jìn)行 class 的反編譯(該工具需要 java 8 的支持)。
jd-GUI 下載鏈接:https://github.com/java-decompiler/jd-gui/releases
點擊 jar 下載,下載完成后點擊 jar 運(yùn)行,然后將 ?.class
? 文件拖入 jd-GUI 即可對 class 文件進(jìn)行反編譯。
有些公司會對 java 代碼先進(jìn)行混淆再進(jìn)行編譯,這時候 class 反編譯的文件會出現(xiàn)變量命名毫無規(guī)律的情況,但代碼邏輯還是正常的。如果要代碼恢復(fù)成源代碼,這時候就需要反混淆(反混淆概念與本文不相關(guān),不做拓展)。
本文介紹了 java 怎么查看 class 文件。查看 class 文件對于普通的 java 開發(fā)工程師作用有限,但它卻是一些黑客的必備技能。通過 java 反編譯得到源代碼后修改部分代碼重新編譯,可以得到具有特殊功能的相應(yīng)軟件(也就是常說的破解)。更多 java 使用技巧,關(guān)注W3C技術(shù)頭條。