jmap直方图中的这些对象是什么?

Chr*_*ach 32 java memory jmap

我正在使用jmap来获取堆的直方图.我不确定对象是什么被称为"[C","[S","[I"和"[B".谁知道?

$ jmap -histo 3299

 num     #instances         #bytes  class name
----------------------------------------------
   1:          9804       19070632  [Ljava.util.HashMap$Entry;
   2:         38074        6216960  [Ljava.lang.Object;
   3:         62256        4727832  [C
   4:         19665        3124744  <constMethodKlass>
   5:         19665        2365864  <methodKlass>
   6:         57843        2313720  java.lang.String
   7:          1662        2060528  <constantPoolKlass>
   8:         21121        1842344  [S
   9:         37772        1743888  <symbolKlass>
  10:          2554        1655632  [I
  11:         63710        1529040  java.lang.Integer
  12:          1662        1264184  <instanceKlassKlass>
  13:          1515        1196224  <constantPoolCacheKlass>
  14:         24351        1168848  java.util.HashMap$Entry
  15:         18706        1047536  java.net.SocketTimeoutException
  16:          4301         784416  [B
 ...
  23:          2588         242616  [[I
Run Code Online (Sandbox Code Playgroud)

Joa*_*uer 57

  • [C 是一个 char[]
  • [S 是一个 short[]
  • [I 是一个 int[]
  • [B 是一个 byte[]
  • [[I 是一个 int[][]

JavaDoc forClass.getName()有详细信息.