public class ObjectCreate implements Cloneable, Serializable {
static String fileName = ObjectCreate.class.getResource("").getPath() + "/obj1.txt";
static File file = new File(fileName);
static {
if (!file.exists()) {
try {
file.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
public static void main(String[] args) throws ClassNotFoundException, IllegalAccessException, InstantiationException, CloneNotSupportedException, IOException {
//1,用关键字new
ObjectCreate objectCreate1 = new ObjectCreate();
System.out.println(objectCreate1);
//2,利用反射
ObjectCreate objectCreate2 = (ObjectCreate) Class.forName("com.zhuyun.test02.ObjectCreate").newInstance();
System.out.println(objectCreate2);
//3,利用clone()方法
Object objectCreate3 = objectCreate1.clone();
System.out.println(objectCreate3);
//4,利用序列化
ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream(file));
objectOutputStream.writeObject(objectCreate1);
ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream(file));
ObjectCreate objectCreate4 = (ObjectCreate) objectInputStream.readObject();
System.out.println(objectCreate4);
}
}
java创建对象的四种方法
最新推荐文章于 2021-02-23 22:43:36 发布