美文网首页
反射---调用任意方法

反射---调用任意方法

作者: 爱做梦的严重精神病患者 | 来源:发表于2018-11-07 00:08 被阅读0次

1.获得Method对象

反射机制允许调用任意方法。首先要先获得Method对象,可以通过调用Class类中的getMethod()方法。需要提供方法名以及方法的参数类型的Class对象

getMethod方法的签名Method getMethod(String name, Class... parameterTypes)

//获取Employee.getName()方法的Methode对象
Method m1 = Employee.class.getMethod("getName");
//Employee.raiseSalary()方法的Methode对象
Method m2 = Employee.class.getMethod("raiseSalary", double.class);

2.调用Method.invoke

 在Method类中有一个invoke方法,它允许调用包装在当前Method对象中的方法

invoke方法的签名是:Object invoke(Object obj, Object...args)第一个参数是隐式参数其余对象提供了显示参数。对于静态方法第一个参数可以被忽略(null)

//调用(Employee)harry.getName()
String name = m1.invoke(harry);
//调用(Employee)harry.raiseSalary(double d)
double salary = m2.invoke(harry, (double)200);

相关文章

  • 反射---调用任意方法

    1.获得Method对象  反射机制允许调用任意方法。首先要先获得Method对象,可以通过调用Class类中的g...

  • Java的反射和内省

    1.反射反射是指在运行过程中,可以获取任意类的属性和方法信息;对于任意对象,都可以获取调用其任意方法;这种动态获取...

  • java 反射机制

    反射 Java反射机制是在运行状态中,对于任意类,可以知道该类中所有的属性和方法,对于任意对象,可以调用它的任意一...

  • golang反射机制

    反射 反射就是程序能够在运行时动态的查看变量自己的所有属性和方法,能够调用他的任意方法和属性。 GO的反射基础是接...

  • 反射

    反射: 在运行时,我们可以回去任意一个类的所有方法和属性 在运行时,让我们调用任意一个对象的所有方法和属性 反射前...

  • 反射与动态代理

    反射Java 反射机制在程序运行时,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用...

  • 反射

    什么是反射? 反射是指在运行状态中,对于任意一个类,都能知道这个类的所有属性和方法;对于任意一个对象,都能调用它的...

  • 2021-07-25 反射与注解

    反射: 在运行状态中,对于任意一个类。都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和...

  • 反射使用指南

    反射 反射的作用:在运行状态中, 对于任意一个类,都能够知道这个类的所有属性和方法 对于任意一个类,都能够调用它的...

  • 二十一、Swift3.0之反射机制和命名空间

    反射机制:对于任意一个类,都能够知道这个类的属性和方法;对于任意一个对象,都能够调用它的任意一本方法和属性。这种动...

网友评论

      本文标题:反射---调用任意方法

      本文链接:https://www.haomeiwen.com/subject/lqzpxqtx.html