logo

Java の参照データ型

Java には 2 種類の

Java 参照型

Java の参照型には次の 5 種類があります。

参照タイプ 説明
クラス 説明書セットです。オブジェクトの内容を説明します。
配列 同じ型の要素を格納する固定サイズのデータ​​構造を提供します。
注釈 これは、メタデータをプログラム要素に関連付ける方法を提供します。
インターフェース Java クラスによって実装されます。
列挙 これはタイプセーフな特別な種類のクラスです。 enum 内の各要素は、その enum のインスタンスです。

参照データ型とプリミティブ データ型

参照タイプ プリミティブ型
文字列以外は事前定義されていません。 Java で事前に定義されています。
すべての参照型は大文字で始まります。 すべてのプリミティブ型は小文字で始まります。
非プリミティブ型はすべて同じサイズになります。 プリミティブ型のサイズはデータ型によって異なります。
メソッドを呼び出したり呼び出すために使用されます。 プリミティブ型を使用してメソッドを呼び出すことはできません。
null にすることもできます。 null にすることはできません。それは常に価値を持っています。
参照データ型の例としては、クラス、配列、文​​字列、インターフェイスなどがあります。 プリミティブ データ型の例としては、int、float、double、Boolean、long などがあります。
JVM は、デフォルトで各参照変数に 8 バイトを割り当てます。 そのサイズはデータ型によって異なります。
: Demo d1; : int num=78;

メモリ割り当てとガベージ コレクション

Javaでは、 新しいキーワード を作成するために使用されます 実例 クラスの。つまり、割り当ててクラスをインスタンス化します。 メモリ 新しいオブジェクトを取得し、そのメモリへの参照を返します。オブジェクトは Java ヒープ領域のメモリを占有します。 new キーワードを使用して、 配列オブジェクト

 ClassName objectName = new ClassName(); 

オブジェクトへの参照がない場合、そのオブジェクトによって使用されているメモリはガベージ コレクション プロセス中に再利用できます。

プリミティブ型と参照型の間の変換

プリミティブ型から参照型への変換は と呼ばれます。 オートボクシング 参照型からプリミティブ型への変換が呼び出されます。 開梱する

参照タイプの比較

Java の参照型を比較す​​ることもできます。 Java では、参照型を比較す​​る 2 つの方法が提供されています。

等号 (==) 演算子を使用する

オブジェクトのメモリ位置を比較します。両方のオブジェクトのメモリ アドレス (参照) が同じであれば、オブジェクトは等しいです。オブジェクトの内容は比較されないことに注意してください。例えば:

 Demo d1 = new Demo('Atlanta'); //creating a reference of Demo class Demo d2 = d1; //assigning the reference d1 into d2 if(d1=d2) //comparing reference 

String.equals() メソッドを使用する

このメソッドは以下に属します。 クラス。をオーバーライドします。 等しい() の方法 物体 クラス 。また、参照型の比較に等価演算子 (==) も使用します。たとえば、次のコード スニペットを考えてみましょう。

 String str1='JAVA'; String str2='JAVA'; String str3='java'; System.out.println(str1.equals(str2)); //returns true because content and case is same System.out.println(str1.equals(str3)); //returns false because case is not same 

参照型のコピー

参照型をコピーする場合、オブジェクトへの参照のコピーが作成されるか、オブジェクトの実際のコピー (新しいコピーの作成) が作成されるかの 2 つの可能性があります。

次の例では、オブジェクトへの参照を割り当てています。オブジェクトに変更を加えた場合は、参照も反映され、その逆も同様です。

 Sum s1 = new Sum(); Sum s2= s1;