对象是如何创建的
Vehicle minivan = new Vehicle();声明一个 Vehicle 类型的对象。
该语句做了两件事:
声明一个名为 Vehicle 类小型货车的变量。
创建对象的物理副本,并使用 new 运算符为小型货车分配对其的引用。
new 运算符为对象动态分配内存并返回对其的引用。
引用或多或少是new分配的内存中对象的地址。
然后将引用存储在变量中。
在Java中,一个类的所有对象都必须动态分配。
指令的两个步骤可以重写以单独显示每个步骤。
车辆小型货车; // 声明对该对象的引用。
小型货车=新车辆(); // 分配一个 Vehicle 对象。
第一行将小型货车声明为对 Vehicle 类型的对象的引用。
minivan 是一个可以引用对象的变量,但它不是一个对象。
目前,小型货车不引用对象。
下一行创建一个新的 Vehicle 对象,并为小型货车分配对其的引用。
现在小型货车已链接到一个对象。
引用变量和赋值
对象引用变量在赋值操作中的行为与基本类型变量不同。
在原始类型变量中,左侧变量接收右侧变量值的副本。
在对象引用变量中,左边的变量与右边的变量引用同一个对象。
这可能会导致意想不到的结果。
示例:
车辆 car1 = new Vehicle();
车辆 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 = new Vehicle();
车辆 car2 = car1;
车辆 car3 = new Vehicle();
汽车2 = 汽车3;
car2 现在引用与 car3 相同的对象。
car1 引用的对象保持不变。
以上是对象创建的详细内容。更多信息请关注PHP中文网其他相关文章!