无招胜有招之Java进阶JVM(一)
生活随笔
收集整理的這篇文章主要介紹了
无招胜有招之Java进阶JVM(一)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
Class文件格式:Java虛擬機中定義的Class文件格式。每一個Class文件都對應著唯一一個類或接口的定義信息,但是相對地,類或接口并不一定都得定義在文件里(譬如類或接口也可以通過類加載器直接生成)。我們只是通俗地將任意一個有效的類或接口所應當滿足的格式稱為“Class文件格式”,即使它不一定以磁盤文件的形式存在。
推薦:https://blog.csdn.net/tyyj90/article/details/78472986
再說內存結構前先說一下JVM的基本結構:
?
?
常量池:
即class文件常量池,是class文件的一部分,用于保存編譯時確定的數據。
運行時常量池:
Java語言并不要求常量一定只能在編譯期產生,運行期間也可能產生新的常量,這些常量被放在運行時常量池中。
類加載后,常量池中的數據會在運行時常量池中存放!
這里所說的常量包括:基本類型包裝類(包裝類不管理浮點型,整形只會管理-128到127)和String(也可以通過String.intern()方法可以強制將String放入常量池)
【補充】jdk 1.7后,移除了方法區間,運行時常量池和字符串常量池都在堆中。
4.本地方法接口:主要調用c 或c++實現的本地方法及返回結果。
至于直接內存,目前不是很清楚,后期再補。
路漫漫,加油!
?
總結
以上是生活随笔為你收集整理的无招胜有招之Java进阶JVM(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: maven环境下,控制台中文乱码
- 下一篇: 无招胜有招之Java进阶JVM(二)