Java 反射机制中 getMethod()和getDeclaredField()区别
来源:互联网 发布:java面试题全集 中 编辑:程序博客网 时间:2024/05/16 00:46
Java 反射机制中 getMethod()和getDeclaredField()区别
Java
今天在程序中用到java反射机制时,遇到的问题记录一下:我当时遇到的问题是,我用反射getMethod()调用类方法时,发生 NoSuchMethodException异常,后来上网发现getMethod()调用公共方法,不能反射调用私有方法,后来找到 getDeclaredField()能够访问本类中定义的所有方法。后来用这个方法解决了我遇到的问题。我查了java api文档,其中详细说明如下:
Method getDeclaredMethod(String name, Class… parameterTypes)d
返回一个 Method 对象,该对象反映此 Class 对象所表示的类或接口的指定已声明方法。
Method[] getDeclaredMethods()
返回 Method 对象的一个数组,这些对象反映此 Class 对象表示的类或接口声明的所有方法,包括公共、保护、默认(包)访问和私有方法,但不包括继承的方法。
Method getMethod(String name, Class… parameterTypes)
返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。
Method[] getMethods()
返回一个包含某些 Method 对象的数组,这些对象反映此 Class 对象所表示的类或接口(包括那些由该类或接口声明的以及从超类和超接口继承的那些的类或接口)的公共 member 方法。
getDeclaredField(String name)
返回一个 Field 对象,该对象反映此 Class 对象所表示的类或接口的指定已声明字段。
Field[] getDeclaredFields()
返回 Field 对象的一个数组,这些对象反映此 Class 对象所表示的类或接口所声明的所有字段,包括公共、保护、默认(包)访问和私有字段,但不包括继承的字段。
Method getDeclaredMethod(String name, Class… parameterTypes)d
返回一个 Method 对象,该对象反映此 Class 对象所表示的类或接口的指定已声明方法。
Method[] getDeclaredMethods()
返回 Method 对象的一个数组,这些对象反映此 Class 对象表示的类或接口声明的所有方法,包括公共、保护、默认(包)访问和私有方法,但不包括继承的方法。
Method getMethod(String name, Class… parameterTypes)
返回一个 Method 对象,它反映此 Class 对象所表示的类或接口的指定公共成员方法。
Method[] getMethods()
返回一个包含某些 Method 对象的数组,这些对象反映此 Class 对象所表示的类或接口(包括那些由该类或接口声明的以及从超类和超接口继承的那些的类或接口)的公共 member 方法。
getDeclaredField(String name)
返回一个 Field 对象,该对象反映此 Class 对象所表示的类或接口的指定已声明字段。
Field[] getDeclaredFields()
返回 Field 对象的一个数组,这些对象反映此 Class 对象所表示的类或接口所声明的所有字段,包括公共、保护、默认(包)访问和私有字段,但不包括继承的字段。
- Java 反射机制中 getMethod()和getDeclaredField()区别
- Java 反射机制中 getMethod()和getDeclaredField()区别
- Java 反射机制中 getMethod()和getDeclaredField()区别
- Java 反射机制中 getMethod()和getDeclaredField()区别
- java反射机制——getMethod/getField与getDeclaredMethod/getDeclaredField区别
- Java 反射机制中 getMethod()和getDeclaredMethod()区别
- Java 反射机制中 getMethod()和getDeclaredMethod()区别
- java反射中getDeclaredField和getField的区别
- java 反射 getDeclaredField和getField的区别
- java反射getDeclaredField和getField的区别
- java反射机制中的getDeclaredField()
- Java反射之getDeclaredField和getField的区别
- java反射中getMethod getDeclaredMethod
- java反射中getMethod getDeclaredMethod .
- 【JAVA】【反射】JAVA 中 getMethod()和invoke()方法应用
- Java反射之getDeclaredField()
- java反射机制 + Method.invoke解释 getMethod + 反射理解
- java反射机制详解 及 Method.invoke解释 getMethod
- 读取一个RSS种子,并输入到屏幕上
- C# 获取当前工作目录
- 黑马程序员-创建sql数据库并初始化
- Ajax中如何向服务器发送XML文件
- ORACLE--预编译与共享池--SGA基本介绍
- Java 反射机制中 getMethod()和getDeclaredField()区别
- Oracle分页查询语句
- ACE文件夹说明
- oracle无归档误删除数据打开
- C# 堆栈与堆(托管堆)
- dump文件调试
- excel之C++[1]获取指定的工作页
- Reverse Linked List II
- Win7 x64 PL/SQL 连接 Oralce 提示 Could not initialize "%ORACLE_HOME%\bin\oci.dll"