Java 反射可以让我们在运行时获取和操作类的信息,包括类的属性、
方法、构造函数等。下面是一个
使用 Java 反射的简单案例:
假设我们有一个类Person:
javapublic class Person java基础反射视频 {private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age;}public void sayHello() {System.out.println("Hello, my name is " + name + ", I am " + age + " years old.");}}
现在,我们可以
使用 反射来获取和
调用Person类的构造函数和
方法:
javaimportjava.lang.reflect.Constructor;importjava.lang.reflect.Method;public class ReflectionExample {public static void main(String[] args) throws Exception {// 获取Person类的Class对象Class<Person> personClass = Person.class;// 获取Person类的构造函数Constructor<Person> constructor = personClass.getConstructor(String.class, int.class);//使用构造函数创建Person对象Person person = constructor.newInstance("Tom", 20);// 获取Person类的sayHello方法Method sayHelloMethod = personClass.getMethod("sayHello");//调用sayHello方法sayHelloMethod.invoke(person);}}
以上代码中,我们首先通过`Person.class`获取了Person类的Class对象,然后
使用`getConstructor`
方法获取了Person类的构造函数,并
使用构造函数创建了一个Person对象。接着,我们
使用`getMethod`
方法获取了Person类的`sayHello`
方法,并
使用`invoke`
方法 调用了该
方法。最终,我们输出了`Hello, my name is Tom, I am 20 years old.`。
版权声明:
本文来源网络,所有图片文章版权属于原作者,如有侵权,联系删除。
本文网址:https://www.bianchenghao6.com/h6javajc/3821.html