Method getMethod

转自:https://www.cnblogs.com/douder/p/7237883.htmlMethod getMethod(String name, Class<?>… parameterTypes) –返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。 方法后面接收的就是Class类的对象,而如:String.class、i…

大家好,又见面了,我是全栈君,祝每个程序员都可以多学几门语言。

转自:https://www.cnblogs.com/douder/p/7237883.html

Method getMethod(String name, Class<?>… parameterTypes)
–返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。

方法后面接收的就是Class类的对象,而如:String.class、int.class这些字节码才是Class类的对象

也可以此种方式:

//getMethod第一个参数是方法名,第二个参数是该方法的参数类型,
//因为存在同方法名不同参数这种情况,所以只有同时指定方法名和参数类型才能唯一确定一个方法

Method method = XXX.getClass().getMethod(methodName,new Class[0]);

//第一个参数是具体调用该方法的对象
//第二个参数是执行该方法的具体参数

如一个函数 int Test(int a, String str);

对应的getMethod方法:

1. getMethod("Test",int.class,String.class);

2. getMethod("Test",new Class[]{
  
  int.class,String.class});

然后通过invoke来调用此方法:

函数原型:Object Java.lang.reflect.Method.invoke(Object receiver, Object… args)

//Method类的invoke(Object obj,Object args[])方法接收的参数必须为对象,
//如果参数为基本类型数据,必须转换为相应的包装类型的对象。invoke()方法的返回值总是对象,
//如果实际被调用的方法的返回类型是基本类型数据,那么invoke()方法会把它转换为相应的包装类型的对象,再将其返回

receiver:该方法所在类的一个对象

args: 传入的参数 如 100,“hello

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/119808.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 为什么香港服务器可以免备案

    为什么香港服务器可以免备案呢?这可能是许多朋友都回答不上来的话题,即使是经常使用香港服务器的用户也有部分人不清楚,那么今天我们就聊聊为什么香港服务器可以免备案:众所周知,我们国家实行的一国两制,所以香港地区在管理制度方面会和我们国内的不太一样,不仅是管理制度,包括法律,互联网使用规则也不一样。在国内,根据我国的互联网规定,网站所有者必须向国家有关部门申请实名备案,甚至部分网站还需要完成公安部备案,才能正常使用域名访问网站,且国内为净化互联网,也对许多内容进行限制;而香港则没有必须申请备案的要求,只要网站

  • 表结法和账结法_我国采用表结法还是账结法

    表结法和账结法_我国采用表结法还是账结法为了计算出当期利润,通常采用两种方法:表结法和账结法。国内一些财务系统多采用账结法,这似乎比较符合中国式习惯。即:期末,损益类的虚账户的余额结转汇总到本年利润科目,最后账户无余额;资产负债类实账户结

  • 网络传输的两种方式——同步传输和异步传输的区别[通俗易懂]

    网络传输的两种方式——同步传输和异步传输的区别[通俗易懂]在网络通信过程中,通信双方要交换数据,需要高度的协同工作。为了正确的解释信号,接收方必须确切地知道信号应当何时接收和处理,因此定时是至关重要的。在计算机网络中,定时的因素称为位同步。同步是要接收方按照发送方发送的每个位的起止时刻和速率来接收数据,否则会产生误差。通常可以采用同步或异步的传输方式对位进行同步处理。1.异步传输(AsynchronousTransmission):异步传输…

  • java创建线程池的四种方式_线程池对象的创建方式

    java创建线程池的四种方式_线程池对象的创建方式Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadPool创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。newScheduledThreadPool创建一个定长线程池,支持定时及周期性任务执行。newSingl…

  • idea 集成svn_idea怎么关联svn

    idea 集成svn_idea怎么关联svn当你idea集成svn工具时:依照如下步骤:1.下载并安装svn:链接:https://pan.baidu.com/s/1jIs00Pg密码:2o3x2.特别说明:如果你没选上:那么你会在你的安装路径上无法找到svn.exe3.之后你就可以正常的使用svn。

    2022年10月17日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号