老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

Java虛擬機的體系結構和內存模型是什么

這篇文章主要介紹“Java虛擬機的體系結構和內存模型是什么”,在日常操作中,相信很多人在Java虛擬機的體系結構和內存模型是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java虛擬機的體系結構和內存模型是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

專注于為中小企業提供網站設計、成都做網站服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業遼陽縣免費做網站提供優質的服務。我們立足成都,凝聚了一批互聯網行業人才,有力地推動了上千多家企業的穩健成長,幫助中小企業通過網站建設實現規模擴充和轉變。

Java 虛擬機體系結構

Java虛擬機的體系結構和內存模型是什么

類裝載子系統

Java虛擬機有兩種類裝載器,分別是啟動類裝載器和用戶自定義裝載器。

通類裝載子系統通過類的全限定名(包名和類名,網絡裝載還包括 URL)將 Class  裝載進運行時數據區。對于每一個被裝載的類型,Java虛擬機都會創建一個java.lang.Class類的實例來代表該類型,該實例被放在內存中的堆 區,而裝載的類型信息則位于方法區,這一點和所有其他對象都是一樣的。

類裝載子系統在裝載一個類型前,除了要定位和導入對應的二進制class文件外,還要驗證導入類的正確性,為類變量分配并初始化內存,以及解析符號引用為直接引用,這些動作嚴格按照以下順序進行:

1)裝載——查找并裝載類型的二進制數據;

2)連接——執行驗證,準備以及解析(可選)

3)驗證 確保被導入類型的正確性

4)準備 為類變量分配內存,并將其初始化為默認值

5)解析 把類型中的符號引用轉換為直接應用

方法區

對于每一個被類裝載子系統裝載的類型,虛擬機都會保存下列數據到方法區:

  • 類型的全限定名

  • 類型超類的全限定名(java.lang.Object沒有超類)

  • 類型是類類型還是接口類型

  • 類型的訪問修飾符

  • 任何直接超接口的全限定名有序列表

除了上述基本類型信息,還將保存如下信息:

  • 類型的常量池

  • 字段信息(包括字段名、字段類型、字段修飾符)

  • 方法信息(包括方法名、返回類型、參數的數量和類型、方法修飾符,如果方法不是抽象和本地的,還將保存方法的字節碼、操作數棧和該方法棧幀中的局部變量區的大小和異常表)

  • 常量以外的所有類變量(其實就是類的靜態變量,因為靜態變量是所有實例共享的,且與類型直接相關,所以他們是類一級的變量,作為類的成員被保存在方法區)

一個到類ClassLoader的引用

//返回的就是剛才保存的ClassLoader引用  
String.class.getClassLoader();

一個到Class類的引用

//將返回剛才保存的Class類的引用  
String.class;

注意,方法區也是可以被垃圾回收器回收的。

Java程序在運行時創建的所有類實例或數組都放在同一個堆中,而每一個Java虛擬機也是有一個對空間,所有線程共享一個堆(這就是一個多線程的Java程序會產生對象訪問的同步問題的原因了)。

由于每一種Java虛擬機都有對虛擬機規范的不同實現,所以我們可能不知道每一種Java虛擬機在堆中是以何種形式表示對象實例的,不過我們可以通過下面這可能的實現來一窺端倪:

Java虛擬機的體系結構和內存模型是什么

程序計數器

對于運行中的Java程序而言,每一個線程都有自己的PC(程序計數器)寄存器,它是在該線程啟動時創建的,大小為一個字長,用來保存需要被執行的下一行代碼的位置。

Java棧

每一個線程都有一個Java棧,以棧幀為單位保存線程的運行狀態。虛擬機對Java棧的操作有兩種:壓棧和出棧,二者都已幀為單位。棧幀保存了傳入參數、局部變量、中間運算結果等數據,在方法完成時被彈出,然后釋放。

看一下兩個局部變量相加時棧幀的內存快照

Java虛擬機的體系結構和內存模型是什么

本地方法棧

這是 Java 調用操作系統本地庫的地方,用來實現 JNI(Java Native Interface,Java 本地接口)

執行引擎

Java虛擬機的核心,控制裝入 Java 字節碼并解析;對于運行中的Java程序而言,每一個線程都是一個獨立的虛擬機執行引擎的實例,從線程生命周期的開始到結束,他要么在執行字節碼,要么在執行本地方法。

本地接口

連接了本地方法棧和操作系統庫。

注:文中所有提到”Java虛擬機”的地方都是指”JavaEE和JavaSE平臺的Java虛擬機規范”。

到此,關于“Java虛擬機的體系結構和內存模型是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注創新互聯網站,小編會繼續努力為大家帶來更多實用的文章!


網站名稱:Java虛擬機的體系結構和內存模型是什么
文章位置:http://www.xueling.net.cn/article/ihoccc.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 逼特视频 | 精品亚洲国产成人A片在线观看 | 日本免费大片免费视频 | 精品一区二区三区影院在线午夜 | 成人亚洲a片v一区二区三区网址 | 日本xxxx高清色视频在线播放 | 我要看特级黄色片 | 欧美一级爱爱视频 | 亚洲无人区码一码二码三码的含义 | 亚洲午夜精选 | 国内精品999| 2019年最好看的中文免费视频 | 免费观看18禁无遮挡真人网站 | 日本久久大片 | 性a欧美片 | 亚洲一区网站 | 免费一级A级高清毛片 | 在线免费观看不卡av | 国产人成高清在线视频99最全资源 | 九九自拍视频 | 日本男人天堂 | 高柳の肉嫁动漫在线播放 | a毛片在线观看 | 伊人久久精品亚洲午夜 | 欧美日韩视频在线观看一区 | 九色PORNY真实丨国产18 | 91在线免费?看网站 国产精品色吧国产精品 | 亚洲日本欧美综合在线一 | 无码中文字幕人妻在线一区二区三区 | 麻豆视频在线观看免费网站黄 | 日日爱网站 | 国产精品亚洲第一 | 嫩草欧美| 欧美国产偷国产精品三区 | 免费一级做a爰片性视频 | 97人妻中文字幕免费视频 | 一区二区三区高清在线 | 久久久午夜 | 国产精品视频★ | 久久综合五月丁香六月丁香 | 免费的api接口网站 殴美成人在线视频 |