Heim > Java > JavaErste Schritte > Analyse der Beziehung zwischen Stapelspeicher, Heapspeicher und Methodenbereich

Analyse der Beziehung zwischen Stapelspeicher, Heapspeicher und Methodenbereich

王林
Freigeben: 2020-07-30 16:37:28
nach vorne
2717 Leute haben es durchsucht

Analyse der Beziehung zwischen Stapelspeicher, Heapspeicher und Methodenbereich

Werfen wir zunächst einen Blick auf den Code:

(Empfohlenes Tutorial: Java-Einführungs-Tutorial)

package cn.liang.jvm;
    public class SimpleHeap {	
            private int id;	
            public SimpleHeap(int id){		
                this.id = id;
	    }	
        public void show(){
	    System.out.println("My ID is " + id);
	}	
        public static void main(String[] args) {
		SimpleHeap s1 = new SimpleHeap(1);
		SimpleHeap s2 = new SimpleHeap(2);
		s1.show();
		s2.show();
	}
}
Nach dem Login kopieren

Beziehungsdiagramm :

Analyse der Beziehung zwischen Stapelspeicher, Heapspeicher und Methodenbereich

(Video-Tutorial-Empfehlung: Java-Video-Tutorial)

  • Die SimpleHeap-Instanz selbst wird im Heap zugewiesen Speicher

  • Die Informationen, die die SimpleHeap-Klasse beschreiben, werden im Methodenbereich gespeichert.

  • Die lokalen Variablen s1 und s2 in der Funktion main() sind im Java-Stack-Speicher gespeichert und auf den Heap verwiesen. Zwei Instanzen des Speichers

Heap-Bereich:

1. Alle gespeicherten Objekte sind Objekte, und jedes Objekt enthält Informationen über a entsprechende Klasse. (Der Zweck der Klasse besteht darin, Betriebsanweisungen zu erhalten)

2. JVM verfügt nur über einen Heap-Bereich (Heap), der von allen Threads gemeinsam genutzt wird. Grundtypen und Objektreferenzen werden nicht im Heap gespeichert, sondern nur das Objekt selbst.

Stapelbereich:

1. Jeder Thread enthält einen Stapelbereich. Im Stapel werden nur Objekte grundlegender Datentypen und Verweise auf benutzerdefinierte Objekte gespeichert Heap. Bereich

2. Die Daten (Originaltypen und Objektreferenzen) in jedem Stapel sind privat und können von anderen Stapeln nicht abgerufen werden.

3. Der Stapel ist in drei Teile unterteilt: Basistyp-Variablenbereich, Ausführungsumgebungskontext und Betriebsanweisungsbereich (Speicherbetriebsanweisungen).

Methodenbereich:

1. Wird auch als statischer Bereich bezeichnet und wird wie der Heap von allen Threads gemeinsam genutzt. Der Methodenbereich enthält alle Klassen- und statischen Variablen.

2. Der Methodenbereich enthält Elemente, die im gesamten Programm immer eindeutig sind, wie z. B. Klassen- und statische Variablen.

Das obige ist der detaillierte Inhalt vonAnalyse der Beziehung zwischen Stapelspeicher, Heapspeicher und Methodenbereich. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage