導航:首頁 > 編程語言 > 靜態域java

靜態域java

發布時間:2023-09-01 06:28:32

java把內存劃分為4個部分 1. 代碼區 1、棧區 3、堆區 4、靜態區域

1、棧區(stacksegment)—由編譯器自動分配釋放,存放函數的參數值,局部變數的值等,具體方法執行結束之後,系統自動釋放JVM內存資源

2、堆區(heapsegment)—一般由程序員分配釋放,存放由new創建的對象和數組,jvm不定時查看這個對象,如果沒有引用指向這個對象就回收

3、靜態區(datasegment)—存放全局變數,靜態變數和字元串常量,不釋放

4、代碼區(codesegment)—存放程序中方法的二進制代碼,而且是多個對象共享一個代碼空間區域

Ⅱ JAVA 實例域和靜態域分別是什麼意思

實例域:故名意義需要實例如類後方可使用裡面的屬性、方法

靜態域:則不需要可以直接使後,更重的是靜態域可以作為系統緩存在不同類中使用,也可以理解全局的概念

Ⅲ java中定義靜態區域的問題

你可以把那個靜態代碼塊看作一個方法 則你定義的變數i的作用域只在這個方法內 出了這個方法當然就訪問不到了 就像我們平常寫的方法中定義的局部變數一樣

Ⅳ Java棧和本地方法棧方法調用棧,這些都是什麼

JAVA內存裡面有一般有四個分類,堆, 棧(堆棧), 靜態域, 常量池

棧: 實際上是一個隊列, 遵循 FILO的原則(後進先出), 裡面儲存的是函數的參數值,局部變數,對象的引用(對象本身不在這里)等,因此在每調用一個函數時,堆棧都會分配一部分空間給它,函數返回時,被釋放
堆: 儲存靜態變數,全局變數 和 用new創建的東西,棧中的內存是動態內存,其中的內存在不使用時隨時可以被回收
靜態域:存放對象中static定義的成員
常量池:存放常量
根據以上解釋回答你的問題:
JAVA棧存的是函數的參數值,局部變數,對象的引用
方法調用棧? 沒有這說法吧, 方法的調用是存在棧中的
本地方法棧, 和JAVA中的棧一個作用, 只是這個棧是屬於本地的,不屬於JAVA虛擬機,但受JAVA虛擬機的控制,因為是JAVA虛擬機簡單地動態鏈接並直接調用指定的本地方法。可以把這看作是虛擬機利用本地方法來動態擴展自己
局部變數和對象引用存在 棧 中, 方法調用的棧幀也是在 棧 中
以上是我自己查資料+自己的理解,有錯望指出

閱讀全文

與靜態域java相關的資料

熱點內容
方舟手游如何修改伺服器後台 瀏覽:815
程序員考試教程 瀏覽:219
文件名修改為文件夾的名字批處理 瀏覽:251
拍照程序員 瀏覽:827
wps怎麼把pdf轉jpg 瀏覽:217
自拍用什麼app做的藝術照 瀏覽:169
h3c無線配置命令 瀏覽:515
linux代碼閱讀工具 瀏覽:160
能夠畫出對稱圖形的是什麼app 瀏覽:424
單片機投票器 瀏覽:467
程序員那麼可愛唱嗎 瀏覽:830
手機誤刪的app怎麼恢復 瀏覽:700
java第三方加密庫 瀏覽:660
編譯代碼軟體哪個好 瀏覽:997
編譯器軟體圖片 瀏覽:880
美團專送app怎麼不接受遠單 瀏覽:833
伺服器mgmt口如何連接電腦 瀏覽:798
做程序員至少要精通幾種 瀏覽:673
個人用雲伺服器價格對比 瀏覽:257
如何遠程刪除伺服器文件夾 瀏覽:779