Heim > Java > javaLernprogramm > Wo werden statische Java-Mitglieder im Speicher gespeichert?

Wo werden statische Java-Mitglieder im Speicher gespeichert?

Susan Sarandon
Freigeben: 2024-12-04 08:37:11
Original
440 Leute haben es durchsucht

Where Are Java Static Members Stored in Memory?

Wo im Speicher werden statische Mitglieder in Java gespeichert?

Statische Methoden und Variablen, wie sie im bereitgestellten Java-Codeausschnitt gezeigt werden, werden im PermGen-Abschnitt des Heap-Speichers in der Hotspot-JVM von Oracle und anderen darauf basierenden gespeichert. PermGen enthält Metadaten, einschließlich klassenbezogener Daten.

Speichermechanismen:

  • Statische Variablen:Nur ​​ihre technischen Werte ( Primitive oder Referenzen) werden in PermGen gespeichert. Wenn eine statische Variable auf ein Objekt verweist, befindet sich das Objekt selbst in Standard-Heap-Bereichen und nicht in PermGen.
  • Statische Methoden: Alle Methoden, auch statische, belegen als Teil der Reflexion Platz in PermGen Daten.

Wichtig Hinweise:

  • PermGen wird nur für Metadaten verwendet; Statische Felder werden im regulären Heap gespeichert.
  • Eclipse OpenJ9 und andere JVMs verfügen möglicherweise nicht über PermGen oder Metaspace.
  • Es ist unzuverlässig, sich bei der Speicherbereinigung auf finalize() zu verlassen. Es liegt an der JVM, den Zeitpunkt der Speicherbereinigung und geeignete Objekte zu bestimmen.
  • Das alleinige Setzen einer statischen Variablen auf Null garantiert möglicherweise nicht die Entfernung von Objekten aus dem Heap.
  • Die Speicherung von Code und Daten kann variieren abhängig von der JVM-Implementierung und -Version.

Das obige ist der detaillierte Inhalt vonWo werden statische Java-Mitglieder im Speicher gespeichert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage