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

背景:

对于好多程序员来说,你问他,如何创建对象,他可能就只知道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();
        }
    }
}

测试结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值