もっと正確に言えば、intはIntegerクラスの一部です(削除されたバージョンなど)、それとも完全に他のものですか?intはJavaのオブジェクトですか?
int型は値型で、Integer型は参照型ですが、Objectから継承しています。
もっと正確に言えば、intはIntegerクラスの一部です(削除されたバージョンなど)、それとも完全に他のものですか?intはJavaのオブジェクトですか?
int型は値型で、Integer型は参照型ですが、Objectから継承しています。
Javaの基本タイプはオブジェクトではなく、オブジェクトから継承しません。
Java 1.5では、int型とInteger型(およびその他の型)の間でオートボックスが可能になりました。
int型は、ジェネリック型パラメータとして使用することはできませんオブジェクトは、例えばされていないのでT
"Primitive Data Types"から
プリミティブ型はオブジェクトではありません(私はこの点についてのint、long、boolean型などのそれを想定していますが、すべて同様の。intがちょうど便宜のために選ばれたされている)が、彼らが必要とされているどんな文脈に直接格納されています。オブジェクトのように扱う必要がある場合は、Integerで囲むことができます。
Integerクラスは、オブジェクト内のプリミティブ型intの値をラップ:あなたが整数の話なら
。 Integer型のオブジェクトには、型がintの単一のフィールドが含まれます。
さらに、このクラスは、intをStringおよびintに変換するいくつかのメソッド、およびintを扱うときに役立つ他の定数およびメソッドを提供します。
intはオブジェクトではなく、そのプリミティブ型です。
list<T>
に:「プリミティブ型は、言語に組み込まれている特別なデータ型を示し、それらがクラスから作成されたオブジェクトではありません。つまり、いいえ、int
はjava.lang.Objectから継承しません。つまり、「クラスから作成されたオブジェクト」だけがそれを行うためです。考えてみましょう:ために
int x = 5;
をObjectから継承するx
をという名前のもののために、そのことは、型を持っている必要があります。私はx
とその名前の区別をしています。 x
のタイプはint
ですが、x
という名前のものは値5であり、それ自体は型がありません。これは、積分値「5」を表す一連のビットにすぎません。これとは対照的に、考えてみます。この場合、
java.lang.Number y = new java.lang.Integer(5);
を、y
は、型Numberを持っており、y
という名前の事はInteger型を持っています。 y
という名前のものがオブジェクトです。それはy
またはそれ以外のものとは関係のない明確なタイプです。
+1を参照して迷惑をかけます。 – mikek3332002
疑問があります。戻り値の型が 'Object'で、メソッドが実際に' int'を返すことができますか?はいの場合、呼び出し環境で 'Object'から' int'をどのように取得できますか? –
@ KaranChadhaコメントの代わりに新しい質問として投稿する必要があります。しかし、同じ質問がすでに以前に尋ねられているかどうかを確認することを忘れないでください。 –
だから、オブジェクト=参照型ですか? – soandos
@soandos:はい。 Javaのすべてのクラスインスタンスは参照型です。 – siride