Integer
クラスのドキュメントによると:
Integerクラスは、プリミティブ型intの値をオブジェクトにラップします。整数型のオブジェクトには、型がintである単一のフィールドが含まれています。
およびに関するドキュメントint
:
デフォルトでは、intデータタイプは32ビットの符号付き2の補数整数であり、最小
-2^31
値は2^31-1
。、最大値は。です。
また、この回答によると:
Javaでは、すべての変数にソースコードで宣言された型があります。タイプには、参照タイプとプリミティブタイプの2種類があります。参照型はオブジェクトへの参照です。プリミティブ型には値が直接含まれます。
だから、私の質問は:int
プリミティブ型はJavaでどのように実装されていますか?Integer
クラスであることは、そのオブジェクトの作成を想像することができます。ただし、Integer
クラスは再びを使用しint
ます。どのようint
にJavaに実装されているので、Javaを使用でき、すべての算術演算を実行できます。これについての洞察は非常に役立ちます。
私は多くの既存の回答と記事を試しましたが、次のような私の質問に対する回答が見つかりませんでした。
PS:
私の質問のいずれかの部分が不明確/不正確であるならば、コメントセクションで私に知らせてください。
int
その他のプリミティブ型は、JavaコンパイラとJVMによって直接実装されます。それらはクラスではありません。これらは値型であり、参照型ではありません。
コンパイラーは、メソッドのディスパッチを伴わずに、iload、iadd、istoreなどのバイトコードを発行します。
Integer
かなり普通のクラスです。そのインスタンスはヒープに割り当てられます。各インスタンスにはint
値が含まれています。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加