Java 创建对象有几种方式?
-
new 创建新对象
-
通过反射创建对象
-
采用 clone 机制
-
通过序列化机制
使用 new 关键字
public class MyClass {
public MyClass() {
System.out.println("MyClass object created!");
}
}
public class Main {
public static void main(String[] args) {
MyClass obj = new MyClass();
}
}
使用反射
通过 Class
对象的 newInstance
方法或通过构造器对象创建实例。
public class MyClass {
public MyClass() {
System.out.println("MyClass object created using reflection!");
}
}
public class Main {
public static void main(String[] args) {
try {
// 使用 Class.forName 获取类对象
Class<?> clazz = Class.forName("MyClass");
// 创建实例
MyClass obj = (MyClass) clazz.getDeclaredConstructor().newInstance();
} catch (Exception e) {
e.printStackTrace();
}
}
}
使用 clone
方法
通过实现 Cloneable
接口和覆盖 clone
方法来创建对象的副本。
public class MyClass implements Cloneable {
public MyClass() {
System.out.println("MyClass object created!");
}
@Override
protected Object