首页 > 编程语言 > 详细

java类反射获取成员方法

时间:2021-05-04 10:05:59      阅读:20      评论:0      收藏:0      [点我收藏+]

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

//通过反射获取成员方法并使用
public class ReflectDemo5 {
    public static void main(String[] args) throws IllegalAccessException, InstantiationException, NoSuchMethodException, InvocationTargetException {
        Class<Student> studentClass = Student.class;

        //获取公共方法
//        Method[] methods = studentClass.getMethods();
//        for (Method method : methods) {
//            System.out.println(method);
//        }

//        Method[] declaredMethods = studentClass.getDeclaredMethods();
//        for (Method declaredMethod : declaredMethods) {
//            System.out.println(declaredMethod);
//        }

        //获取单个方法并使用
        Student student = studentClass.newInstance();

        //获取各种方法
        Method method1 = studentClass.getMethod("method1");
        Method method2 = studentClass.getMethod("method2", String.class);
        Method method3 = studentClass.getMethod("method3", String.class, int.class);
        Method function = studentClass.getDeclaredMethod("function");
        //私有方法,暴力反射
        function.setAccessible(true);

        //使用反射获取的方法
        method1.invoke(student);
        method2.invoke(student,"方法2");
        System.out.println(method3.invoke(student,"gfx",24));
        function.invoke(student);
    }
}


java类反射获取成员方法

原文:https://www.cnblogs.com/codegzy/p/14728353.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!