阅读量:5
Java对象赋值的方法有两种:
- 直接赋值:通过使用等号(=)将一个对象赋值给另一个对象。这样做会将源对象的引用复制给目标对象,使得目标对象与源对象指向同一个内存地址。这意味着对目标对象的修改也会影响到源对象。
例如:
Object obj1 = new Object(); Object obj2 = obj1; // 将obj1的引用赋值给obj2
- 使用构造函数或者工厂方法创建新对象:通过调用目标对象的构造函数或者工厂方法,使用源对象的属性值来创建一个新的对象。这样做会生成一个新的对象,并将源对象的属性值复制到新对象中,使得新对象与源对象指向不同的内存地址。
例如:
class MyClass { private int value; public MyClass(int value) { this.value = value; } // 省略其他代码 } MyClass obj1 = new MyClass(10); MyClass obj2 = new MyClass(obj1.getValue()); // 使用obj1的属性值创建一个新的MyClass对象
这两种赋值方法在不同的场景下有不同的用途。直接赋值适用于对象引用的复制,而使用构造函数或工厂方法适用于创建新对象并初始化其属性值。