欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

反射获取构造方法

程序员文章站 2023-11-12 09:06:04
获取所有构造方法,获取指定单参构造方法(指定类型为String): 运行结果: ......

获取所有构造方法,获取指定单参构造方法(指定类型为string):

 1 package com.mldn.demo;
 2 
 3 import java.lang.reflect.constructor;
 4 
 5 class mail{
 6     private string msg;
 7     public mail() {}
 8     public mail(string msg) {
 9         system.out.println("【构造方法】调用mail类单参构造方法,实例化对象。");
10         this.msg = msg;
11     }
12     @override
13     public string tostring() {
14         return "【tostring()覆写】消息内容:" + this.msg;
15     }
16 }
17 public class javareflectdemo {
18     public static void main(string[] args) throws exception {
19         class<?> cls = mail.class;
20         constructor<?> constructors[] = cls.getdeclaredconstructors();
21         system.out.println("获取所有父类构造方法:" );
22         for(constructor<?> con: constructors) {
23             system.out.println(con);
24         }
25         
26         constructor<?> con = cls.getdeclaredconstructor(string.class);
27         object object = con.newinstance("www.mldn.com");
28         system.out.println("获取指定单参构造方法:"+object);
29     }
30 }

运行结果:

获取所有父类构造方法:
public com.mldn.demo.mail()
public com.mldn.demo.mail(java.lang.string)
【构造方法】调用mail类单参构造方法,实例化对象。
获取指定单参构造方法:【tostring()覆写】消息内容:www.mldn.com