ボックス化 自動ボックス化

ボックス化

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/02/02 09:17 UTC 版)

自動ボックス化

前述のボックス化・ボックス化解除の操作を暗黙的に行なうことを、自動ボックス化autoboxing[5]および自動ボックス化解除auto-unboxing)と呼ぶ。

自動ボックス化はJava SE 5 (J2SE 5.0, Java 1.5) で追加され、JSR 201で宣言されている。自動ボックス化がサポートされた処理系では、対となる逆の操作、自動ボックス化解除もサポートされる。

以下のコードは自動ボックス化・自動ボックス化解除の例である。

int iv1 = 100;
Integer iw = iv1; // ボックス化。
int iv2 = iw; // ボックス化解除。

Javaコンパイラによって、プリミティブ型とプリミティブラッパークラス間の暗黙変換は、前述のようなボックス化・ボックス化解除を実行するコードに展開される。

.NET

.NETにおいては、概念(型システム)上、値型も含めすべての型はSystem.Object型(これは参照型である)の派生型であるため、この型への暗黙的なアップキャストを行なうことができる。すべての値型はSystem.ValueTypeクラスから派生し、その基底クラスであるSystem.Objectへの暗黙的なボックス化が可能となっている(Javaの自動ボックス化に相当)。一方、ボックス化解除はダウンキャストにより明示的に実行する必要がある。

C#の例を示す。

int iv1 = 100;
object iw = iv1; // 暗黙的なボックス化。
int iv2 = (int)iw; // ボックス化解除。

明示的なボックス化も可能ではあるが、通例使われない[6]

object iw = (object)iv1; // 明示的なボックス化。

  1. ^ カナ表記で「ボクシング」とも。
  2. ^ カナ表記で「アンボクシング」とも。
  3. ^ 「原始型」とも。
  4. ^ Java 9以降は @Deprecated すなわち廃止予定としてマークされている。
  5. ^ カナ表記で「オートボクシング」とも。
  6. ^ ボックス化とボックス化解除 (C# プログラミング ガイド) | Microsoft Docs
  7. ^ Autoboxing | Oracle Java Documentaiton


「ボックス化」の続きの解説一覧




固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「ボックス化」の関連用語

ボックス化のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ボックス化のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのボックス化 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。

©2024 GRAS Group, Inc.RSS