反射获取带参数的构造方法
Posted 码上加油站
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了反射获取带参数的构造方法相关的知识,希望对你有一定的参考价值。
Constructor
Class类的newInstance()方法是使用该类无参的构造函数创建对象, 如果一个类没有无参的构造函数, 就不能这样创建了,可以调用Class类的getConstructor(String.class,int.class)方法获取一个指定的构造函数然后再调用Constructor类的newInstance("张三",20)方法创建对象
import java.lang.reflect.Constructor; import com.loaderman.bean.Person; public class Demo_Constructor { /** Class类的newInstance()方法是使用该类无参的构造函数创建对象, 如果一个类没有无参的构造函数, 就不能这样创建了,可以调用Class类的getConstructor (String.class,int.class)方法获取一个指定的构造函数然后再调用Constructor类的newInstance ("张三",20)方法创建对象 @throws Exception */ public static void main(String[] args) throws Exception { Class clazz = Class.forName("com.heima.bean.Person"); //Person p = (Person) clazz.newInstance(); 通过无参构造创建对象 //System.out.println(p); Constructor c = clazz.getConstructor(String.class,int.class);//获取有参构造 Person p = (Person) c.newInstance("张三",23); //通过有参构造创建对象 System.out.println(p); } }
package com.loaderman.bean; public class Person { private String name; private int age; public Person() { super(); } public Person(String name, int age) { super(); this.name = name; this.age = age; }
以上是关于反射获取带参数的构造方法的主要内容,如果未能解决你的问题,请参考以下文章