Java仕様の基本的なタイプは、バイトコードで定数を定義します

免責事項:この記事はブロガーオリジナル記事です、続くBY-SAのCC 4.0を著作権契約、複製、元のソースのリンクと、この文を添付してください。
このリンク: https://blog.csdn.net/red_sheeps/article/details/79933774

以下は、「Javaの特殊部隊」から来ています

文字を入力し 対応するタイプ 説明
B バイト バイトを代表して、それはバイトを意味していません
とともに ブーリアン ブール値を代表して、同じことは、ブール値ではありません
S ショート
C CHAR
int型
J 長いです
F 浮く
D ダブル
V 空隙 戻り値なし
LClassName; 参照 参照されるクラスは、例えば、文字列は次のように識別される:Ljava / lang.String。
[ 配列リファレンス アレイへの参照が、例えばの[] []として識別されるダブル:[D; String []型として同定される:[Ljava.lang.String。

バイトコードで上記で定義されたものです。

jmapのコマンドを使用して、オブジェクトのJavaアプリケーションの内容を見る前に理解していないとき、物事の束の出力が、非常に明確にした後、上記の仕様によると、

1. jps -lJavaアプリケーション

[app@localhost ~]$ jps -l
17439 sun.tools.jps.Jps
31456 com.test.bootstrap.Main
[app@localhost ~]$ 

2.コマンドを入力します。jmap -histo:live 31456|more

[app@localhost ~]$ jmap -histo:live 31456|more

 num     #instances         #bytes  class name
----------------------------------------------
   1:        206707       14594424  [C
   2:         69903        9904328  <constMethodKlass>
   3:         69903        8959328  <methodKlass>
   4:          6543        7538872  <constantPoolKlass>
   5:        206312        4951488  java.lang.String
   6:          6543        4829504  <instanceKlassKlass>
   7:          5680        4465248  <constantPoolCacheKlass>
   8:         17715        2113904  [B
   9:         54203        1734496  java.lang.ref.WeakReference
  10:          2882        1486608  <methodDataKlass>
  11:         39774        1272768  java.util.concurrent.ConcurrentHashMap$HashEntry
  12:         30530        1221200  java.util.LinkedHashMap$Entry
  13:         22637         905480  java.lang.ref.SoftReference
  14:         14081         788536  java.beans.MethodDescriptor
  15:         21827         754632  [Ljava.lang.Object;
  16:          7799         684168  [Ljava.util.HashMap$Entry;
  17:          6978         682856  java.lang.Class
  18:         12115         678440  java.util.LinkedHashMap
  19:         28127         675048  java.beans.MethodRef
  20:          8424         673920  java.lang.reflect.Method
  21:          8810         577704  [S
  22:          7702         561816  [I
  23:         10000         530096  [[I

上記のように[C[[Iそのためchar配列参照、特定の意味を知っているし、[] []の参照をint型することができるであろう。

おすすめ

転載: blog.csdn.net/red_sheeps/article/details/79933774