Java.lang.Class.getDeclaredMethod()方法用法

注:方法返回一个Method对象,它反映此Class对象所表示的类或接口的指定已声明方法。

描述

java.lang.Class.getDeclaredMethod()方法返回一个Method对象,它反映此Class对象所表示的类或接口的指定已声明方法。

name 参数是一个字符串,指定所需的方法的简单名称,

parameterTypes 参数是一个数组的Class对象识别方法的形参类型,在声明的顺序

声明

[java] view plaincopy print?
  1. public Method getDeclaredMethod(String name, Class... parameterTypes) throws NoSuchMethodException,SecurityException

参数
name -- 方法的名称
parameterTypes -- 参数数组

返回值
匹配指定名称和参数的类的方法,此方法返回的Method对象

异常
NoSuchMethodException -- 如果匹配方法未找到

NullPointerException -- 如果name 为 null.

SecurityException -- If a security manager, s, is present.

实例
如何使用java.lang.Class.getDeclaredMethod()方法

[java] view plaincopy print?
  1. package com.app.ui;
  2. import java.lang.reflect.*;
  3. public class ClassDemo {
  4. public static void main(String[] args) {
  5. ClassDemo cls = new ClassDemo();
  6. Class c = cls.getClass();
  7. try {
  8. // parameter type is null
  9. Method m = c.getDeclaredMethod("show", null);
  10. System.out.println("method = " + m.toString());
  11. // method Integer
  12. Class[] cArg = new Class[1]
  13. cArg[0] = Integer.class;
  14. Method lMethod = c.getDeclaredMethod("showInteger", cArg);
  15. System.out.println("method = " + lMethod.toString());
  16. }catch(NoSuchMethodException e){
  17. System.out.println(e.toString());
  18. }
  19. }
  20. private Integer show() {
  21. return 1;
  22. }
  23. public void showInteger(Integer i) {
  24. this.i = i;
  25. }
  26. public int i = 78655;
  27. }

编译和运行程序,产生以下结果:

[java] view plaincopy print?
  1. method = private java.lang.Integer ClassDemo.show()
  2. method = public void ClassDemo.showInteger(java.lang.Integer)

注:

getDeclaredMethod() 获取的是类自身声明的所有方法,包含public、protected和private方法。

getMethod () 获取的是类的所有共有方法,这就包括自身的所有public方法,和从基类继承的、从接口实现的所有public方法。

转载于:https://www.cnblogs.com/lxmyhappy/p/6878637.html

java.lang.Class.getDeclaredMethod()方法详解相关推荐

  1. Java中的main()方法详解

    源文作者:leizhimin    源文链接:http://lavasoft.blog.51cto.com/62575/53263 源文作者版权申明: 版权声明:原创作品,允许转载,转载时请务必以超链 ...

  2. Java Thread的interrupt方法详解

    Java Thread的interrupt方法详解 一.概述 interrupt方法的目的是给线程发出中断信号,但是不保证线程真的会中断 中断一个线程只是为了引起该线程的注意,被中断线程可以决定如何应 ...

  3. 使用Java操作文本文件的方法详解

    使用Java操作文本文件的方法详解 摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而 ...

  4. 【JDK源码】java.lang包常用类详解

    接下来的几天开始JDK源码的学习和总结,之前看<java编程思想>的时候看到java的基础知识有很多,其中支撑着这些基础的基础中的基础当属JDK.JDK的基础代码里面又分了很多基础的模块, ...

  5. 【Java】5.2 方法详解

    目录 方法 递归方法 方法重载 ==================================================== 方法 1.从语义定义的角度来看必须定义在类中,类.方法||实例 ...

  6. java perl5compiler,Java中正则表达式使用方法详解(四)

    3.2 HTML处理实例一 下面一个任务是分析HTML页面内FONT标记的所有属性.HTML页面内典型的FONT标记如下所示 程序将按照如下形式,输出每一个FONT标记的属性 在这种情况下,我建议你使 ...

  7. java定时执行bat_windows定时器配置执行java jar文件的方法详解

    ##创建测试类 新建Java工程创建测试类如下代码:(创建文件验证定时器是否执行) package makeFile; import java.io.File; import java.io.IOEx ...

  8. java 运行class_运行java的class文件方法详解

    一.运行class文件 执行带main方法的class文件,命令行为: java 注意:CLASS文件名不要带文件后缀.class 例如: java Test 如果执行的class文件是带包的,即在类 ...

  9. 怎么运行java class_运行java的class文件方法详解

    一.运行class文件 执行带main方法的class文件,命令行为: java 注意:CLASS文件名不要带文件后缀.class 例如: 复制代码代码如下: java Test 如果执行的class ...

最新文章

  1. 简述RHEL7新特性(一)
  2. 【MySQL】简单命令总结
  3. mysql双机数据热备份_mysql 双机交互热备份
  4. python循环语句-Python-循环语句及循环控制语句
  5. SAP更新数据表的程序执行需要SE38后执行
  6. 加密(Asp.Net配置文件的)配置节
  7. ArcGIS学习总结(18)——面要素/矢量拆分
  8. 题目264-国王的魔镜
  9. ITIL4-foundation学习和考试心得
  10. 显卡煲机测试软件,晒物评测 篇三:煲机到底有没有用?森海塞尔木馒头耳机用了3年的评测,随便聊聊...
  11. 中小企业成本的会计核算方法
  12. Moudle、aar新建和导入
  13. vue首次赋值不触发watch及watch和computed的区别
  14. opencv中Mat与vector互转
  15. 高端访谈实录:访思科英国CEO菲尔·史密斯
  16. 学习AI人工智能,你必须要知道的4件事!
  17. 部署SDN控制器对接OVS网元实现转控分离实战 附ODL控制器
  18. Nginx学习日记1
  19. 决定系数 coefficient of determination的两种计算方法
  20. 进军NFT?方文山×周杰伦联名款公仔今日发售,将引入NFT防伪认证!

热门文章

  1. java excel转word表格_java利用poi生成/读取excel表格、生成word
  2. linux 查看系统函数库,教你在Linux操作系统中如何创建函数库
  3. java虚拟键盘_web虚拟键盘VirtualKeyboard
  4. eclipse 摁住ctrl 键卡死
  5. mysql命令:查看表结构
  6. 【oracle】oracle jdbc驱动与c3p0的一个兼容问题
  7. php判断ie版本,PHP获取浏览器版本信息
  8. cpp判断输入为数字_猜数字小程序带你C语言入门
  9. oracle 5种索引方式,MySQL使用索引的几种方式
  10. 计算机控制技术黄勤,微型计算机控制技术 教学课件 黄勤 第3章微型计算机控制系统的常用控制.ppt...