Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Heap Vs . Stack v jazyku Java

Java programy využívajú pamäť počítača rôznymi spôsobmi . Ak Java programátori mať aspoň základné vedomosti o tom , ako je pamäť spravovaná v rámci jazyka , majú oveľa väčšiu šancu na vytvorenie efektívnej , vysoko výkonné aplikácie . Rovnako ako u väčšiny aspektov programovania , nie je nutné pochopiť všetky detaily implementácie modelu správy pamäte v jazyku Java , ale chytil dva základné typy pamätí a ich vplyvu na plánovanie je užitočné . Typy A Memory

Java premenné dátového modelu a súčasti kód rôznymi spôsobmi . V závislosti od typu a rozsahu premenné , môže byť uložený buď v odvalu alebo zásobníka pamäti . Pamäťový zásobník môže byť myšlienka ako krátkodobý , haldy ako dlhodobé . Keď sa blížite k developerský projekt v Jave , budete musieť neustále rozhodovanie o tom , ako modelovať dátové položky , ktoré budú určovať , v ktorých sú uložené typy pamäti . Tvorba týchto rozhodnutí s pochopením dôsledkov umožňuje vývojárom maximalizovať efektivitu programu .
Primitivo

primitívne typy v Jave sú základné čísla a typy postáv , ako je " int " pre primitívne celočíselné hodnoty a " char " na primitívnych znakov . Keď Java ukladá primitívne typy , uložené informácie sa skladá z veľkej časti z hodnôt premenných , takže množstvo využitie pamäte má tendenciu byť menšie , než u typov objektov . Je-li primitívny typ premenná existuje iba ako lokálne premenné v súbore triedy aplikácie , bude Java uložiť ho do zásobníka pamäti .
Objekty

typy objektov v Java sú oba typy poskytovaných v rámci samotného jazyka a typov definovaných programátorov používajúci triedy vyhlásenie . Keď Java program vytvorí objekt , JVM ( Java Virtual Machine ) , alokuje časť pamäte haldy pre neho . V rámci programu , názov premennej priradená k typu objektu funguje ako odkaz na toto miesto v pamäti . Priestor pre objekt v pamäti haldy môžu obsahovať dáta v rámci objektu , vrátane premenných akéhokoľvek druhu , či už primitívne alebo objekt .
Variabilný Rozsah

Variabilné rozsah má priamy dopad na správu pamäte v rámci programu Java . Ak chcete vytvoriť efektívne aplikácie , vývojári sa snažia minimalizovať požadovaný rozsah pre danú premennú alebo dátové položky. Napríklad, nasledujúci ukazuje podmienený príkaz s lokálnou premennou vnútri nej :

int someNumber = 3 ;

if ( someNumber > 0 ) {

int doubleNumber = someNumber * 2 ;

System.out.println ( doubleNumber ) ;

}

triviálne príklad vykonáva výpočet na premenné , písať výsledok von . Premenná uloženie výsledku výpočtu je deklarovaná vnútri podmienené , takže nie je prístupná kedykoľvek po podmieneného bloku . Všeobecne platí , čo veličinu minimálne množstvo rozsahu nevyhnutnom na to, aby správne fungovať pomáha programy použiť ako málo pamäte , ako je to možné .
Garbage Collection

JVM Garbage Collector riadi množstvo pamäte, ktorá je k dispozícii program . Je-li predmet alebo iný typ je už používaný v rámci aplikácie ( napríklad , v prípade , že sa vykonáva svoju funkciu , a už nie je potrebné ) , pamäť sa používa v ideálnom prípade by malo byť k dispozícii , ak to bude nevyhnutné. Garbage Collector je schopný prerozdeliť haldy pamäte , ak je aplikácia spustená nedostatok pamäte zdrojov . Je-li premenná objektu je mimo rozsah , jeho pamäť môže byť kandidátom na zber odpadkov .

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené