首页 > 其他分享 >反射获取成员方法method

反射获取成员方法method

时间:2023-03-16 19:35:54浏览次数:43  
标签:反射 System method 获取 Method println public out

public class MethodDemo {

    public static void main(String[] args) throws ClassNotFoundException, NoSuchMethodException, SecurityException,
        InstantiationException, IllegalAccessException {
        // 获取Class对象
        Class clazz = Class.forName("reflect.Student");

        // 获取公共的成员方法,包括父类继承的方法
        Method[] methods = clazz.getMethods();
        for (Method method : methods) {
            System.out.println(method);
        }

        // 获取所有成员方法,不包括继承的
        Method[] declaredMethods = clazz.getDeclaredMethods();
        for (Method method : declaredMethods) {
            System.out.println(method);
        }

        // 获取单个公共的成员方法getMethod(String name, Class<?>... parameterTypes)
        // 参数1是方法名,参数2是方法的参数,方法没有参数可以不写
        Method method = clazz.getMethod("show");
        System.out.println(method);

        // 获取一个有形参的方法
        Method method1 = clazz.getMethod("show1", String.class);
        System.out.println(method1);

        // 获取单个成员方法
        Method method2 = clazz.getDeclaredMethod("test");
        System.out.println(method2);

    }

}
public class Student {

    public String name;
    public int age;
    private int money = 100;

    public void show() {
        System.out.println("公共方法");
    }
    
    public void show1(String name) {
        System.out.println("公共有参方法");
    }

    private void test() {
        System.out.println("私有方法:");
    }

    @Override
    public String toString() {
        return "Student [name=" + name + ", age=" + age + ", money=" + money + "]";
    }

}

 

标签:反射,System,method,获取,Method,println,public,out
From: https://www.cnblogs.com/weiduaini/p/17223878.html

相关文章

  • vue3 动态获取 img中的src地址
      vite 官方默认的配置,如果资源文件在assets文件夹打包后会把图片名加上hash值,但是直接通过:src="imgSrc"方式引入并不会在打包的时候解析,导致开发环境可以正常引......
  • 通过uid获取包名
    android调试时查询:1. 当启动camera的时候,ActivityManager的log如下,uid显示10138,    02-2614:02:32.115 1965 2066IActivityManager:STARTu0{act=androi......
  • go dll 获取 当前 光标位置 win10
    packagewindllimport( "syscall" "unsafe")var( modUser32,_=syscall.LoadDLL("user32.dll") procGetKeyboardState,_=modUser32.FindProc(......
  • 解决:无法获取实体类com.xxx.pojo.AppUser对应的表名
    问题:在Application启动类中使用的@MapperScan注解,导入的包为:org.mybaties.spring.annotation.MapperScan解决:导入包改为:tk.mybatis.spring.annotation.MapperScan,解......
  • uni-app 实现图片主题色的获取
    uni-app实现图片主题色的获取<canvascanvas-id="getImageThemeColorCanvas"id="getImageThemeColorCanvas"></canvas>canvas元素默认宽为300,高为150。需要注意的......
  • 获取Class对象
    publicclassReflectDemo{publicstaticvoidmain(String[]args)throwsClassNotFoundException{//获取Class对象的三种方式//1、当类......
  • ContentChildren 胡获取不到所有组件的解决办法
    <app-content-child><divclass="head">这是头部<app-content-child-panel></app-content-child-panel></div><app-content-child-panel></app-content-......
  • Gin 获取请求参数
    1、获取URL?后的参数(不区分请求方式)//获取请求url?后的参数(url:8080/add?name=kelvin)funcGetUrlParam(ctx*gin.Context){name:=ctx.Query("name")de......
  • Vue 代理服务器___Vue 跨域通过Axios 的ajax方式的get请求获取数据
    Vue代理服务器___Vue跨域通过Axios的ajax方式的get请求获取数据1、说明1.1:配置2台本地服务器说明:node_modules为vue脚手架        package.json为静态数据......
  • Java:SpringBoot获取所有接口的路由映射关系
    重要:版本很重要,先说一下版本,版本不一样,可能获取结果也不一样spring-boot2.7.7java1.8定义一个查看路由的数据结构packagecom.example.demo.entity;importlombok.......