2.JVM和DVM之间的区别
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                2.JVM和DVM之间的区别
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                1、JVM
.java----->.class----->.jar
運行在內(nèi)存的 棧
棧虛擬機(jī)
2、DVM
.java----->.class------>.dex-----(加上其它資源文件)---->apk
運行在CPU的 寄存器
寄存器虛擬機(jī)
----------------------------------------------------------
3、DVM與JVM的區(qū)別
dvm執(zhí)行的是.dex文件,jvm執(zhí)行的是.class文件。
?
4、.jar文件和.dex文件的區(qū)別
.jar 文件
里含有多個.class文件,每個.class文件都包含文件頭,這樣IO操作效率低。
舉例:
平時我們復(fù)制項目工作空間,和復(fù)制一個高清電影。項目工作空間大小<高清電影。
但復(fù)制的時候,發(fā)現(xiàn)高清電影復(fù)制速度比項目工作空間快。
因為高清電影雖然大,但只有一個文件,即一個文件頭。項目工作空間有很多文件,即多個文件頭。
.dex文件
不是.class文件的簡單打包,dex工具,去掉了app里所有.class文件的冗余信息,再整合到.dex文件中,減少了IO的操作,提高了查找速度。
對比如下圖
?
總結(jié)
以上是生活随笔為你收集整理的2.JVM和DVM之间的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: getActionBar()报空指针异常
- 下一篇: IntelliJ IDEA 2017.2
