不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦>知識大全>知識百科>百科知識>

java什么是棧

時間: 歐東艷656 分享

  棧(stack)又名堆棧,它是一種運(yùn)算受限的線性表。其限制是僅允許在表的一端進(jìn)行插入和刪除運(yùn)算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向一個棧插入新元素又稱作進(jìn)棧、入?;驂簵?,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從一個棧刪除元素又稱作出?;蛲藯?,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。

  引用變量是普通變量,定義時所在棧中分配內(nèi)存,引用變量在程序運(yùn)行到作用域外釋放。而數(shù)組和對象本身在堆中分配,即使程序運(yùn)行到使用new產(chǎn)生數(shù)組和對象的語句所在地代碼塊之外,數(shù)組和對象本身占用的堆內(nèi)存也不會被釋放,數(shù)組和對象本身占用的堆內(nèi)存也不會被釋放。

  1.寄存器:最快的存儲區(qū), 由編譯器根據(jù)需求進(jìn)行分配,我們在程序中無法控制.

  2. 棧:存放基本類型的變量數(shù)據(jù)和對象的引用,但對象本身不存放在棧中,而是存放在堆(new 出來的對象)或者常量池中(字符串常量對象存放在常量池中。)

  3. 堆:存放所有new出來的對象。

  4. 靜態(tài)域:存放靜態(tài)成員(static定義的)

  5. 常量池:存放字符串常量和基本類型常量(public static final)。

  6. 非RAM存儲:硬盤等永久存儲空間

  引用變量是普通變量,定義時所在棧中分配內(nèi)存,引用變量在程序運(yùn)行到作用域外釋放。而數(shù)組和對象本身在堆中分配,即使程序運(yùn)行到使用new產(chǎn)生數(shù)組和對象的語句所在地代碼塊之外,數(shù)組和對象本身占用的堆內(nèi)存也不會被釋放,數(shù)組和對象本身占用的堆內(nèi)存也不會被釋放。數(shù)組和對象在沒有引用變量指向它的時候,才變成垃圾,不能再被使用,但是仍然占著內(nèi)存, 在隨后的一個不確定的時間被垃圾回收器釋放掉。這個也是java比較占內(nèi)存的主要原因。

java什么是棧

棧(stack)又名堆棧,它是一種運(yùn)算受限的線性表。其限制是僅允許在表的一端進(jìn)行插入和刪除運(yùn)算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向一個棧插入新元素又稱作進(jìn)棧、入?;驂簵?,它是把新元素放到棧頂元素的上面,使之成為新的
推薦度:
點(diǎn)擊下載文檔文檔為doc格式

精選文章

  • java什么是引用類型
    java什么是引用類型

    引用類型 由類型的實(shí)際值引用(類似于指針)表示的數(shù)據(jù)類型。如果為某個變量分配一個引用類型,則該變量將引用(或指向)原始值。不創(chuàng)建任何副本。引用

  • java中什么是數(shù)組
    java中什么是數(shù)組

    所謂數(shù)組,就是相同數(shù)據(jù)類型的元素按一定順序排列的集合,就是把有限個類型相同的變量用一個名字命名,然后用編號區(qū)分他們的變量的集合,這個名字

  • java什么是鏈表
    java什么是鏈表

    鏈表是一種物理存儲單元上非連續(xù)、非順序的存儲結(jié)構(gòu),數(shù)據(jù)元素的邏輯順序是通過鏈表中的指針鏈接次序?qū)崿F(xiàn)的。鏈表由一系列結(jié)點(diǎn)(鏈表中每一個元素稱

  • java什么是類的多態(tài)性
    java什么是類的多態(tài)性

    1. 如果a是類A的一個引用,那么,a可以指向類A的一個實(shí)例,或者說指向類A的一個子類。 2. 如果a是接口A的一個引用,那么,a必須指向?qū)崿F(xiàn)了接口A的一個類的

245880