Java中创建对象的几种方式
1. 使用new关键字
这是最直接、最常见的创建对象的方式。通过new关键字,Java会调用类的构造函数(Constructor)来初始化新创建的对象。
ClassName obj = new ClassName();
2. 使用clone()方法
如果类实现了Cloneable接口并覆盖了Object类的clone()方法,那么可以通过调用对象的clone()方法来创建该对象的浅拷贝(Shallow Copy)。
补充:深拷贝和浅拷贝的区别
浅拷贝:创建一个新对象,这个对象具有与原对象相同的字段和值。但是,如果对象的某些字段是引用类型(如对象或数组),那么浅拷贝只会复制这些引用,而不是引用指向的实际对象。
深拷贝:创建一个新对象,并递归地复制对象内的所有引用类型。这意味着新对象和原对象不再共享任何数据,即使数据是引用类型。深拷贝会创建一个完全独立的副本,包括所有层次上的引用类型。
public class Main {
public static class Person implements Cloneable {
// 必须覆盖clone方法
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
}
public static void main(String[] args) throws CloneNotSupportedException {