1、在JDK8之前,靜態(tài)成員(靜態(tài)變量和靜態(tài)方法)都是存儲在方法區(qū)(永久代)中的靜態(tài)區(qū)中(這里指類被加載后,靜態(tài)成員的存儲位置)。但在JDK8之后,永久代被移除了,取而代之的是元空間(metaspace)。
目前創(chuàng)新互聯(lián)已為近1000家的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬空間、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、佳木斯網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
2、一個jvm實例,只存在一個堆內(nèi)存,堆內(nèi)存的大小是可以調(diào)節(jié)的。類加載器讀取了類文件之后,需要把類,方法,常量放到堆內(nèi)存中,保存所有的引用類型的真實信息,以方便執(zhí)行器執(zhí)行。堆內(nèi)存分為三部分。
3、JAVA的JVM的內(nèi)存可分為3個區(qū):堆(heap)、棧(stack)和方法區(qū)(method)堆區(qū):存儲的全部是對象,每個對象都包含一個與之對應(yīng)的class的信息。
4、◆非RAM存儲:硬盤等永久存儲空間 Java內(nèi)存分配中的棧 在函數(shù)中定義的一些基本類型的變量數(shù)據(jù)和對象的引用變量都在函數(shù)的棧內(nèi)存中分配。
5、一個完整的Java程序運行過程會涉及以下內(nèi)存區(qū)域:\x0d\x0a寄存器:JVM內(nèi)部虛擬寄存器,存取速度非???,程序不可控制。
6、java運行的原理表示:首先源文件通過編譯器編譯成字節(jié)碼文件class,然后在通過JVM中的解釋器將字節(jié)碼文件生成對應(yīng)的可執(zhí)行文件。
構(gòu)造代碼塊:是給所有的對象進行初始化,也就是說,所有的對象都會調(diào)用一個代碼塊,只要對象一建立,就會調(diào)用這個代碼塊。構(gòu)造函數(shù):是給與之對應(yīng)的對象進行初始化,它具有針對性。
System.out.println(局部代碼塊運行!);} }123456 在程序中當我們定義完成一個局部變量x之后,并且在接下來的代碼中,不想再用到它時,那么就沒必要讓x在內(nèi)存中繼續(xù)占用空間。因此就有了局部代碼塊。
java中有四種代碼塊 普通代碼塊:直接在{}中出現(xiàn)的。構(gòu)造代碼塊:在構(gòu)造函數(shù)的{}中出現(xiàn)的。靜態(tài)代碼塊:static{}中出現(xiàn)的。同步代碼塊:多線程中出現(xiàn)。
//構(gòu)造塊:直接在類中定義且沒有加static關(guān)鍵字的代碼塊稱為{}構(gòu)造代碼塊。構(gòu)造代碼塊在創(chuàng)建對象時被調(diào)用,每次創(chuàng)建對象都會被調(diào)用,并且構(gòu)造代碼塊的執(zhí)行次序優(yōu)先于類構(gòu)造函數(shù)。
構(gòu)造代碼塊:執(zhí)行時間比靜態(tài)代碼塊晚,比構(gòu)造函數(shù)早,和構(gòu)造函數(shù)一樣,只在對象初始化的時候運行。沒有名字、參數(shù)和返回值。靜態(tài)代碼塊:最早執(zhí)行,類被載入內(nèi)存時執(zhí)行,只執(zhí)行一次。
1、堆區(qū):存儲的全部是對象,每個對象都包含一個與之對應(yīng)的class的信息。
2、在JDK8之前,靜態(tài)成員(靜態(tài)變量和靜態(tài)方法)都是存儲在方法區(qū)(永久代)中的靜態(tài)區(qū)中(這里指類被加載后,靜態(tài)成員的存儲位置)。但在JDK8之后,永久代被移除了,取而代之的是元空間(metaspace)。
3、java中數(shù)組是以對象形式存在的,棧中存儲的是數(shù)組對象的地址(即引用),而對象本身不存放在棧中,而是存放在堆中,使用時通過棧中的引用地址找到堆中的實際對象,這里的引用地址類似于C/C++中的指針。
4、類加載時 方法信息保存在一塊稱為方法區(qū)的內(nèi)存中, 并不隨你創(chuàng)建對象而隨對象保存于堆中。可參考《深入java虛擬機》前幾章。
5、靜態(tài)存儲。這兒的“靜態(tài)”是指“位于固定位置”。程序運行期間,靜態(tài)存儲的數(shù)據(jù)將隨時等候調(diào)用??捎胹tatic關(guān)鍵字指出一個對象的特定元素是靜態(tài)的。但java對象本身永遠都不會置入靜態(tài)存儲空間。 常數(shù)存儲。
本文標題:java代碼塊存儲在哪里 java static 代碼塊
文章位置:http://chinadenli.net/article20/deisdco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、品牌網(wǎng)站建設(shè)、關(guān)鍵詞優(yōu)化、ChatGPT、App設(shè)計、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)