[英]What is the purpose of bytecode in Java?
鑒於我可以在幾秒鍾內編譯300個類,Java的實現可以只給Java源文件而不是字節碼作為輸入,然后編譯和緩存輸入源代碼,永遠不再編譯它(例如python這樣做,並且很多語言實現的做法是相同的,除了甚至懶得緩存):
這就解釋了為什么分發字節碼而不是本機代碼,但要清楚,我想知道為什么甚至有一個編譯格式的分發呢? 假設編譯很重要,為什么不只是擁有運行時編譯源並緩存它?
我能提出的唯一剩余理由是混淆,但......
...所以這一點被簡化為直覺會說字節碼比源代碼更復雜,因此具有字節碼分發格式允許欺騙商人認為他們的IP受到保護(即字節碼將“增加價值”,但是沒有技術原因)。
為什么Java平台設計用於向用戶分發字節碼,而不是將源代碼分發給用戶? 我無法在互聯網上找到任何解釋。 我在這里失蹤有很大的原因嗎?
如果你給出一個理由,你應該說明這是語言設計者最初的原因,還是今天仍然有效的理由。
你在思考你的小世界 。 有一些令人信服的理由來編譯源代碼並提供字節碼:
我確信有更多的字謎代碼,我甚至沒有。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.