反射机制,用java类名调用方法,给出例子
时间: 2023-09-13 18:08:37 浏览: 147
利用java反射机制实现自动调用类的简单方法
好的,下面是一个使用Java反射机制调用类方法的例子:
假设我们有一个名为`Person`的Java类,其中有一个名为`sayHello()`的方法,现在我们可以使用反射机制调用该方法。具体代码如下:
```java
import java.lang.reflect.Method;
public class ReflectionExample {
public static void main(String[] args) throws Exception {
Class<?> clazz = Class.forName("Person");
Object person = clazz.newInstance();
Method sayHelloMethod = clazz.getMethod("sayHello");
sayHelloMethod.invoke(person);
}
}
class Person {
public void sayHello() {
System.out.println("Hello, I'm a person!");
}
}
```
在上面的代码中,我们首先通过`Class.forName()`方法获取`Person`类的Class对象,然后通过`Class.newInstance()`方法创建`Person`类的实例。接着,我们使用`Class.getMethod()`方法获取`Person`类中名为`sayHello()`的方法对象,最后使用`Method.invoke()`方法调用该方法。
运行上述代码,会输出以下结果:
```
Hello, I'm a person!
```
注意,这只是一个简单的例子,实际上使用反射机制调用方法可能需要处理很多异常情况,因此在实际开发中需要谨慎使用。
阅读全文