java - 整数的封装对象中的对象开销和填充字节是什么东东
PHP中文网
PHP中文网 2017-04-18 09:55:50
0
3
428

看到书里有这么一段话:
一个Integer对象会使用24字节,其中分别是:

  • 16字节的对象开销

  • 4字节用于保存它的int值

  • 4个填充字节

我想请教的是:

  • 什么对象开销?16字节里面究竟存储着什么?

  • 填充字节又是什么?它里面存储着什么?

PHP中文网
PHP中文网

认证高级PHP讲师

membalas semua(3)
左手右手慢动作
  1. 16 bait ialah Object Header, termasuk Mark word, Class maklumat taip... (16 bait ialah saiz pada sistem 64-bit dan mampatan penunjuk tidak didayakan)

  2. Penjajaran HotSpot ialah penjajaran 8 bait Semua objek yang saiz akhirnya bukan gandaan 8 bait akan diisi

  3. .
Ty80

Objek overhed mengandungi maklumat asas objek; bait padding digunakan untuk mengisi bilangan bait.

大家讲道理

Yang berikut hanyalah tekaan yang tidak bertanggungjawab:
Integer mewarisi daripada Object, anda mesti membina Objek terlebih dahulu ialah overhed 8 bait ialah objek kosong dan 4 perkataan . Bahagian adalah rujukan objek, tetapi peruntukan bait dalam Java adalah dalam unit 8, jadi 16 bait digunakan di sini, dan bait yang tidak berguna dipanggil bait padding.
bait padding di bawah adalah sama.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan