ist es möglich die Adresse auf dem heap einer Variablen in java?

können sagen, dass ich diese variable :

...
Somekindofobject var = new Somekindofobject();
...

und ich will wissen, wo var liegt auf dem heap ( Adresse , wie 0x08 und so weiter),und drucken Sie die Adresse aus .

ist es möglich?

  • Wenn alles, was Sie tun möchten, drucken Sie das Objekt, was für nutzen bekommst du aus der Kenntnis, wo es auf dem heap? Was sind Sie wirklich erreichen wollen?
  • Ich denke, er meint, drucken Sie die Adresse aus.
  • ich arbeite an einem Programm bekommt als Eingabe java-Programm , und Instrumente-code druckt in Datei Informationen über die variable zugreifen. Der einzige Weg, dass ich bestimmen kann, zwischen zwei Felder von Objekten der gleichen Klasse ist durch die thier-Adresse auf dem heap. Daher brauche ich die Adresse auf dem heap
  • Man in der Regel Instrumente, die Java-bytecode Java-bytecode. In diesem Fall brauchen Sie nicht "die Adresse". Vielleicht gibt es andere/bessere Frage lauern hier? Wenn müssen "die Adresse" dann die einzige Möglichkeit, die ich kenne ist JNI mit pinning, aber das wird wahrscheinlich nicht funktionieren ", als Sie erwarten" - ich habe Angst.
  • Sieht aus wie Sie benötigen, um ein debugging-framework, diese in der Regel irgendeine Art von eindeutigen Objekt-id.
  • OK, das waren wichtige Informationen. Leider, ein Objekt-Adresse auf dem heap kann (und typischerweise wird) wird im Laufe der Zeit ändern, so dass es nicht dienen als einen eindeutigen Bezeichner.

InformationsquelleAutor RanZilber | 2011-01-10
Schreibe einen Kommentar