Ich möchte die Größe des Objekts, das ich mit java.reflection erstellt. Hier ist der Code. Ich verstehe nicht, was ich falsch mache. Wenn ich das Objekt bekomme, versuche ich das Instrument Interface zu benutzen, aber es funktioniert nicht. Danke für Ihre Hilfe!bekommen Objektgröße in Bits mit Reflexion in Java
Antwort
Nicht sicher, ob ich Ihre Frage richtig verstanden habe, aber ich denke, Sie fragen sich, warum die Größe des Objekts, das Sie drucken, (fast) immer gleich ist. Einige Beispiele Ihrer analyzeData
Methode:
analayzeData("123456789123456789123456789"); // will print a size of 16
analayzeData("123456789"); // will also print a size of 16
analayzeData(new BigInteger("1")) // will print a size of 32!
analayzeData(Arrays.asList(1, 2, 3, 4, 5)); // will print a size of 16
Der Grund für diese kontra-intuitive Ergebnisse ist, dass Instrumentation.getObjectSize(Object)
die (geschätzte) Größe des Objekts zurück selbst und nicht die Größe des Objekts und alle es ist Mitglieder/Felder.
So für ein ArrayList
mit 1000 Elementen werden das Ergebnis noch , sein, weil das die Größe der ArrayList
ist - die Größe seiner Mitglieder müssen gesondert berechnet werden.
bearbeiten
Hier sind einige Anleitungen, wie zu verwenden, Instrumentierung with maven und with ant
Das Problem ist mit der Instrumentierung, die nichts zurückgibt –
@OfirN wie rufen Sie Ihre Tests auf? Ein ähnliches Setup wie hier [http://blog.javabenchmark.org/2013/05/java-instrumentation-tutorial.html] funktioniert für mich – nyname00
- 1. Java größte Objektgröße in Heap
- 2. Java ‚Datum‘ Objektgröße
- 3. Wie kann ich einzelne Bits in einem Float bekommen/setzen?
- 4. Reflexion in Python
- 5. .Net Objektgröße Grenze
- 6. Kollisionswahrscheinlichkeit mit höchstwertigen Bits einer UUID in Java
- 7. Java Android Reflexion
- 8. Java Reflexion in zwei Ebenen von Objekten
- 9. berechnet Objektgröße in einem Bild
- 10. Java Generics und Reflexion!
- 11. Java Reflexion Angemessenheit
- 12. Sollwert für Objektfeld durch Reflexion in Java
- 13. Dynamisch Instanziierung Klasse Reflexion in Java fehl
- 14. Reflexion in der generischen Java-Klasse
- 15. Wie Klasse Annotation in Java zu bekommen?
- 16. Java Reflexion isAccessible Methode
- 17. Java Iterate-Bits in Byte-Array
- 18. .NET-Objektgröße
- 19. kann keinen Feldwert durch Reflexion Getter bekommen
- 20. Wie kann ich Typen in Java mit Reflexion vergleichen
- 21. Java: Instanziieren eine Enumeration mit Reflexion
- 22. Java: generic XML-Reader mit Reflexion
- 23. Wie speichert man eine Datei in Bits mit Java?
- 24. Werte eines Vektors java Reflexion
- 25. Wert public static über Reflexion in Java letzte Feld/Eigenschaft einer Klasse bekommen
- 26. Reflexion in PLSQL?
- 27. BSON-Objektgröße des aus DB
- 28. OS Sprache in Java bekommen
- 29. java.lang.OutOfMemoryError: PermGen Raum: java Reflexion
- 30. Wie kann ich Bits eines vorzeichenlosen Bytes in Java invertieren?
Welchen Teil der oben nicht funktioniert? –
Das Teil, das gedruckt werden muss, um die Größe des Objekts zu trösten –