Wie kann ich den Speicherort eines Objekts in Java abrufen?
Will ich wissen, die Lage, die JVM reserviert für Objekte, die sich im system-Speicher.
InformationsquelleAutor der Frage sidharth sharma | 2011-08-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist etwas, das Sie wahrscheinlich nicht wollen, zu tun.
Wenn Sie wirklich wollen, dies zu tun, so etwas wie dieser code helfen könnte:
Aber
InformationsquelleAutor der Antwort prunge
Ohne Verwendung von JVM-spezifische Merkmale, die dieses nicht getan werden kann. Java absichtlich versteckt der Lage, die mit jedem Objekt zu geben, die Umsetzung mehr Flexibilität (die JVM bewegt sich oft Objekte im Speicher, wenn dabei die garbage-collection) und um die Sicherheit zu verbessern (Sie können nicht verwenden Sie raw-Zeiger auf den Papierkorb Speicher oder Zugriff auf nicht vorhandene Objekte).
InformationsquelleAutor der Antwort templatetypedef
Können Sie http://openjdk.java.net/projects/code-tools/jol zu analysieren Objekt-layouts. Für ein Objekt können Sie verwenden:
InformationsquelleAutor der Antwort egorlitvinenko
Können Sie nicht, weil es nicht existiert. Es ändert sich im Laufe der Zeit aufgrund der garbage-collector Aktion. Es gibt keine solche Sache wie 'die Lage'.
InformationsquelleAutor der Antwort EJP