Java Wrapperクラス

Javaでは、プログラムの性能のためにintやcharのような基本データ型を使用する。しかし、これらのデータはオブジェクトではないため、メソッドには値によって渡され、参照によって直接渡すことはできない。また、int値はインスタンスを参照する方法がない。Wrapperクラスは、基本データ型をオブジェクトのように生成できるようにするクラスである。

Primitive type、Reference type

Primitive type、一般変数型、原始型、基本型

  • byte, short, int, long, float, double, char, boolean
  • null値を持つことができない。
  • Stackメモリ領域に割り当てられる。
  • 実際の値を持つ。

Reference type、wrapper type、参照型

  • Byte, Short, Integer, Long, Float, Double, Character, Boolean
  • null値を持つ。
  • new演算子で生成されるため、値はHeapメモリ領域に割り当てられる。
  • アドレス値を持つ。

Primitive type ↔ Reference type

ボクシング(Boxing)

  • 基本データ型(primitive data type)をwrapper classに変更することをボクシングという。
  • Primitive type → Reference type

アンボクシング(Unboxing)

  • Wrapper classを基本データ型(Primitive data type)に変更することをアンボクシングという。
  • Primitive type ← Reference type