ホームページ >Java >&#&チュートリアル >オブジェクトの作成
オブジェクトの作成方法
行 Vehicle minivan = new Vehicle(); Vehicle タイプのオブジェクトを宣言します。
このステートメントは 2 つのことを行います:
Vehicle クラスの minivan という変数を宣言します。
オブジェクトの物理コピーを作成し、new 演算子を使用してミニバンに参照を割り当てます。
new 演算子はオブジェクトに動的にメモリを割り当て、そのオブジェクトへの参照を返します。
参照は、多かれ少なかれ、new によって割り当てられたメモリ内のオブジェクトのアドレスです。
参照は変数に保存されます。
Java では、クラスのすべてのオブジェクトを動的に割り当てる必要があります。
命令の 2 つのステップを書き換えて、各ステップを個別に表示できます。
車両ミニバン。 // オブジェクトへの参照を宣言します。
ミニバン = 新しい車両(); // Vehicle オブジェクトを割り当てます。
最初の行では、Vehicle タイプのオブジェクトへの参照として minivan を宣言しています。
minivan はオブジェクトを参照できる変数ですが、オブジェクトではありません。
今のところ、ミニバンはオブジェクトを参照しません。
次の行は、新しい Vehicle オブジェクトを作成し、ミニバンに参照を割り当てます。
ミニバンがオブジェクトにリンクされました。
参照変数と代入
オブジェクト参照変数は、代入操作におけるプリミティブ型変数とは異なる動作をします。
プリミティブ型変数では、左側の変数は右側の変数の値のコピーを受け取ります。
オブジェクト参照変数では、左側の変数は右側の変数と同じオブジェクトを参照します。
これにより、予期しない結果が生じる可能性があります。
例:
車両 car1 = 新しい車両();
車両 car2 = car1;
car1 と car2 は同じオブジェクトを参照します。
car1 または car2 を通じて行われた変更は、同じオブジェクトに影響します。
いつ:
car1.mpg = 26;
System.out.println(car1.mpg);
System.out.println(car2.mpg);
26番出口があります。
car1 と car2 は同じオブジェクトを参照しますが、他の方法ではリンクされていません。
その後の car2 への割り当ては car1 には影響しません。
例:
車両 car1 = 新しい Vehicle();
車両 car2 = car1;
車両 car3 = 新しい車両();
car2 = car3;
car2 は car3 と同じオブジェクトを参照するようになりました。
car1 によって参照されるオブジェクトは変更されません。
以上がオブジェクトの作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。