反射获取构造方法

获取所有构造方法,获取指定单参构造方法(指定类型为String): 1 package com.mldn.demo; 2 3 import java.lang.reflect.Constructor; 4 5 class Mail{ 6 private Strin...

获取所有构造方法,获取指定单参构造方法(指定类型为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
  • 发表于 2019-07-20 20:40
  • 阅读 ( 179 )
  • 分类:网络文章

条评论

请先 登录 后评论
不写代码的码农
小编

篇文章

作家榜 »

  1. 小编 文章
返回顶部
部分文章转自于网络,若有侵权请联系我们删除