プリミティブ対オブジェクト / オートボクシングとは? わかりやすく解説

Weblio 辞書 > 辞書・百科事典 > ウィキペディア小見出し辞書 > プリミティブ対オブジェクト / オートボクシングの意味・解説 

プリミティブ対オブジェクト / オートボクシング

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/11/24 15:35 UTC 版)

Javaに対する批判」の記事における「プリミティブ対オブジェクト / オートボクシング」の解説

Java設計者らは、現在他の言語にあるいくつかの機能多重継承演算子多重定義タプルなど)を実装しないことを決めた総称型ジェネリクス)がJava 5.0導入されたとき、すでにJavaにはクラス大規模な枠組みがあった(それらの多くはすでに非推奨となっていた)、そして後方互換性を保つため、総称型実装方法として既存クラス維持することを可能にする(コンパイル時の型消去(型削除type erasure)が選ばれた。これは、他の言語比べると、総称型導入によって提供される機能限定してしまう結果になったJavaのプリミティブ型オブジェクトではない。プリミティブ型は値への参照ではなくそのものスタック領域保持している。この設計選択パフォーマンス上の理由により行われたこのためJava純粋なオブジェクト指向言語と見なされていない。またこのことによりリフレクションがより複雑になっている。配列除きJavaのコレクションクラスはプリミティブ型直接扱うことができず、プリミティブラッパークラスへのボックス化が必要となる。この制約ジェネリクスにおいても変わりない。Javaのジェネリクスは型安全性担保されるだけであり、ジェネリクス使わない場合比べてパフォーマンス上のメリットはない。 また、Java 5.0は、コンパイル中に要求され場合プリミティブ型対応するプリミティブラッパークラスオブジェクト自動変換する機能(オートボクシング)をサポートしているが、オートボクシングではNullPointerException投げられる可能性がある。オートボクシングは暗黙のうちに起こる(キャストメソッド呼び出し伴わない)ため、このNullPointerExceptionという非チェック例外Javaプログラムコード目を通しただけでは明確にならない恐れがある

※この「プリミティブ対オブジェクト / オートボクシング」の解説は、「Javaに対する批判」の解説の一部です。
「プリミティブ対オブジェクト / オートボクシング」を含む「Javaに対する批判」の記事については、「Javaに対する批判」の概要を参照ください。

ウィキペディア小見出し辞書の「プリミティブ対オブジェクト / オートボクシング」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



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

辞書ショートカット

すべての辞書の索引

プリミティブ対オブジェクト / オートボクシングのお隣キーワード
検索ランキング

   

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



プリミティブ対オブジェクト / オートボクシングのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、WikipediaのJavaに対する批判 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS