Java Virtual Machine utgör grunden för programmeringsspråket Java . Programvaran fungerar som ett genomförande buffert mellan Java-kod och det underliggande datorsystemet . Detta gör att Java-kod för att köras på alla system som - är , ökar bärbarhet . Eftersom JVM existerar som en miljö att köra koden , den innehåller sitt eget minne konfiguration , inklusive ytlig minne och heap utrymme . Högen utrymmet utgör en betydande del av JVM minnet , som innehåller kritisk applikation run - time data. Objekt och Memory
Java representerar ett rent objektorienterat programmeringsspråk , vilket innebär att Java innehåller fördelarna med objektorienterad programmering , inklusive arv och polymorfism . För att inkludera dessa förmåner måste JVM ha ett utrymme att lagra instansieras objekt . Dessa objekt finns inte i den omedelbara minnet av en en verkställande tråd av Java-kod . Snarare säger Java -kod " referenser " till objekt som lagrar en plats i djup , långtidsminnet .
Och stacken
högen och stack representerar skillnaden mellan lång och kort sikt minne i ett exekverande program , oavsett objektorienterat språk . Stapeln avser den omedelbara variabler och metodanrop inuti ett exekverande program . Detta inkluderar skalära variabler , t.ex. heltal och bytes , samt kallas funktioner . Högen , å andra sidan , representerar platsen där skapade objekt lagras av programmet. Objekt allokeras dynamiskt i högen och stanna där tills det inte längre krävs av programmet .
JVM Memory
Designers utvecklat JVM minne för att efterlikna objektorienterade system för andra språk som C + + . Varje verkställande tråd av Java-kod i JVM har sin egen stack , som representerar de lokala skalära variabler och funktionsanrop . Dessutom har JVM egen heap utrymme. När ett program skapar en referens till ett objekt , drar objektet minne från den kollektiva högen rymden .
Heap i JVM Memory
heap utrymmet är bara en del av den totala JVM minnet tillsammans med stacken och andra anslag minne för viktiga funktioner och JVM kod . Emellertid representerar heap utrymme en viktig del av JVM genom att det är det fordon med vilket objekt skapas . Dessutom har JVM ett inbyggt sopor samla program för att ta bort oanvända objekt från högen . I äldre objektorienterade språk , var föremål tas bort manuellt , eller riskerat att använda upp högen utrymme i vad som kallades en " minnesläcka . " JVM : s garbage collector , men övervakar högen och raderar gamla föremål .
Addera ditt