• java创建对象的几种方式


    前言,今日面试被问到创建对象是否一定要通过构造器,当时回答错误,查询分析后记录。

    创建对象的几种方式:

    第一种,也是最常用、一直接触到的方法:通过new 创建对象。这种方法需要用到构造器

        Demo demo1=new Demo();
        Demo demo2=new Demo(1,"有参构造器");

     

    第二种,比较常用的的方法:通过反射 newInstance()创建对象。这种方法用到构造器

      Demo demo2=(Demo) Class.forName("Demo").newInstance();

    第三种,通过object类的clone方法。需要实现Cloneable接口,重写object类的clone方法。无论何时我们调用一个对象的clone方法,jvm就会创建一个新的对象,将前面对象的内容全部拷贝进去。用clone方法创建对象并不会调用任何构造函数。(原型模式,还没了解)

      Demo demo4=(Demo) demo2.clone();

    第四种,反序列化。java 中常常进行 JSON 数据跟 Java 对象之间的转换,即序列化和反序列化。
    当我们序列化和反序列化一个对象,JVM会给我们创建一个单独的对象,在反序列化时,JVM创建对象并不会调用任何构造函数。为了反序列化一个对象,我们需要让我们的类实现Serializable接口,虽然该接口没有任何方法。不会调用任何构造函数

  • 相关阅读:
    DG查看恢复进度
    dataguard主备延迟多长时间的查询方法
    DG动态性能视图详解
    Django之ORM的增删改查操作流程
    IPython
    render函数和redirect函数的区别+反向解析
    http状态码
    图的基本概念
    图的遍历
    vue之webpack打包工具的使用
  • 原文地址:https://www.cnblogs.com/nzxj/p/10465053.html
Copyright © 2020-2023  润新知