当前位置:首页 > 编程笔记 > 正文
已解决

【java基础】Java常见的创建对象方式

来自网友在路上 162862提问 提问时间:2023-09-20 10:31:51阅读次数: 62

最佳答案 问答题库628位专家为你答疑解惑

背景:

对于好多程序员来说,你问他,如何创建对象,他可能就只知道new个对象不就行了,但是当我们需要看一些框架的源码的时候,经常发现他们不是这样创建对象,然后回过头来,我们就得补充这些基础知识

下面我们就说说常见的创建对象的6种方式:

首先,先写一个对象

1.new对象

没对象就new一个吧,使用new关键字,这是Java创建对象最简单的方式了

2.反射-类派发一个对象

看下newInstance()的注释,看不懂英文的自己百度去

3.反射-构造一个对象

利用反射,调用构造器构造一个对象

4.反射-动态加载一个对象

利用全类名(全类名:包名+类名)反射一个对象吧

5.克隆一个对象

克隆得继承Cloneable 接口,并且重写其 clone() 方法

6.反序列化一个对象

假如以前序列化保存了一个对象在磁盘上,现在就可以反序列化出来。

序列化需要继承Serializable接口

测试

public class Study {public static void main(String[] args) throws Exception {serialize();deSerialize();}public static void serialize() {PersonVO personVO = new PersonVO();try {FileOutputStream fileOut = new FileOutputStream("D:\\file\\test\\personVO.txt");ObjectOutputStream out = new ObjectOutputStream(fileOut);out.writeObject(personVO);out.close();fileOut.close();System.out.println("序列化后的文件保存在:D:\\file\\test\\personVO.txt");} catch (Exception e) {e.printStackTrace();}}public static void deSerialize() {FileInputStream fileIn = null;try {fileIn = new FileInputStream("D:\\file\\test\\personVO.txt");ObjectInputStream in = new ObjectInputStream(fileIn);PersonVO personVO = (PersonVO) in.readObject();personVO.test();} catch (Exception e) {e.printStackTrace();}}
}

测试结果:

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"【java基础】Java常见的创建对象方式":http://eshow365.cn/6-9948-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!