• 技术文章 >java >java基础

    java反射方式创建实例

    小妮浅浅小妮浅浅2021-01-27 13:56:22原创5783

    在谈到实例的时候,很多人对这个概念还不能说出所以然。其实实例就是一个具体的对象,像我们之前学习的类、数组都可以创建实例。反射相对而言也是比较抽象的概念,所以我们是能够把它实例化的。下面简单对实例进行了解,然后分别带来无参和有参的反射实例实例化方法。

    1.实例说明

    new 一个对象是实例,可以把这个new出来的对象叫做实例,说白了就是这个new出来的“东西”,叫它对象也可以,叫它实例也可以,对象和实例在这个角度上来讲是等价的。

    2.创建空参的实例 使用Class对象的newInstance()方法来创建Class对象对应类的实例。

    //原始:new的时候,先根据被new的类的名称找寻该类的字节码文件,并加载进内存,

    //并创建该字节码文件对象,并接着创建该字节文件对应的Person对象。

    1

    2

    3

    4

    5

    6

    7

    Person p = new Person();

      

    //反射:找寻该类的名称,并加载进内存,并产生Class对象

    //在产生类的对象

    Strint className = "com.example.hgx.Person";

    Class clazz = Class.forName(className);

    Object obj = clazz.newInstance();

    3.创建带参数的实例。 这时要通过Class对象获取指定的Constructor对象,再调用Constructor对象的newInstance()方法来创建实例。

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

        class Person {

            public String name;

            private int age;

      

            public Person(String name, int age) {

                this.name = name;

                this.age = age;

            }

      

        }

      

    //获取Person类带一个(String,int)参数的构造器

    Strint className = "com.example.hgx.Person";

    Class clazz = Class.forName(className);

    Constructor constructor = clazz.getConstructor(String.class,int.class);

    以上就是java反射方式创建实例的方法,大家在弄清楚实例的概念后,就可以着手反射中实例的创建了,同时要区别是否含有参数。

    专题推荐:java反射 实例
    上一篇:java之JVM各类机制整理 下一篇:java反射原理

    相关文章推荐

    • java常见递归练习题• java中ORM的基本内容• java中orm框架有哪几种• java orm的原理分析• Java中反射机制是什么?• java之JVM各类机制整理

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网