什麼是可以解釋僅包含System.out.print()
語句的Java類文件(字節碼)的簡單C/C++代碼(我看過簡單的開源JVM,但它們有點複雜因爲完整的。)
或者在哪裏可以找到一個很好的解釋引導,使用於解釋Java HelloWorld字節碼的C代碼
0
A
回答
1
也許你正在尋找的Java Virtual Machine Specification的解釋(即Java字節碼解釋)。
雖然你的問題似乎微不足道,在第一,這是因爲只有如何好一個門面的JVM地上空,甚至一個簡單的類的這樣的內部方面:
final class WorldGreeter {
public static void main(final String[] argv) {
System.out.println("Greetings, Earth!");
}
}
通過的第五章閱讀這個規範,即Loading, Linking, and Initializing,你會發現虛擬機必須做很多工作才能運行最簡單的程序。
爲了指出所有這些複雜階段的必要性,我假設您使用的是標準的Oracle JDK;根據this blog post,你會期望System.out的初始化需要相當多的工作 - 即加載幾個不同的類,更重要的是工作的JNI層。
現在,沒有理由需要使用Oracle JDK實現......當然,您可以使用更簡單的設置,但大部分結構和工作都放入加載,鏈接和初始化階段仍然站立。這不像你的預感可能告訴你那麼容易。
相關問題
- 1. 理解Java字節代碼
- 2. Java中的代碼解釋
- 3. java中的代碼解釋
- 4. C代碼的解釋
- 5. 解釋字符串的C代碼tokenizer
- 6. 解釋對於代碼?
- 7. 解釋這個C++代碼
- 8. 解釋此C#代碼,請
- 9. 字節序的C++代碼
- 10. 解釋代碼
- 11. 解釋代碼
- 12. 代碼解釋
- 13. 代碼解釋
- 14. 解釋代碼
- 15. 解釋代碼
- 16. 語言在網絡從源代碼解釋字節碼與
- 17. C++中的現代解釋器代碼?
- 18. Java源代碼的字節碼
- 19. 請解釋此代碼適用於Articles.events.publish
- 20. 瞭解字節碼java
- 21. Bouncycastle java編碼/解碼。缺少字節?
- 22. Android java的源代碼解釋
- 23. 基於Web的代碼解釋器
- 24. 基於Java的應用程序中Java代碼的解釋 - 如何在java程序中運行java代碼
- 25. C++:用於方法原型const的代碼解釋= 0
- 26. 與代碼解釋
- 27. 代碼解釋as.Date
- 28. SED代碼解釋
- 29. OnResultExecuted()代碼解釋
- 30. 代碼解釋(MPICH)
你有什麼特別的理由想要這麼做嗎?這很相關,很可能有更好的方法。 – templatetypedef
問:你正在尋找一個反編譯器(只是爲了理解字節碼)還是解釋器(實際運行它)? [DJ Decompiler](http://download.cnet.com/DJ-Java-Decompiler/3000-2213_4-10046809.html)可以說是最好的之一;它只需要20.00美元。恕我直言...... – paulsm4
你可能也想看看[JSava](http://blog.zortrium.net/archives/96) – paulsm4