java反射案例:

新建学生:

public class Student {
   public void show(){
      System.out.println("is show()");
   }
}

创建pro.txt文件:

className = com.lmj.javahomework.Student
methodName = show

创建演示测试类:

public class Demo{
      public static void main(String[] args) throws Exception {
               Class student=Class.forName(getValue("className"));
               Method m=student.getMethod(getValue("methodName"));
               m.invoke(student.getConstructor().newInstance());
   }
       //此方法接收一个key,在配置文件中获取相应的value
   public static String getValue(String key) throws IOException {
      Properties pro = new Properties();//获取配置文件的对象
      FileReader in = new FileReader("src/com/lmj/javahomework/pro.txt");//获取输入流
      pro.load(in);//将流加载到配置文件对象中
      in.close();
      return pro.getProperty(key);//返回根据key获取的value值
   }
}

运行演示,控制台打印是show()

Class类是jdk中的以静态生成的类,动态生成类是以静态类作为模板填充的。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值