反射机制学习3(反射调用方法)
来源:互联网 发布:java编码转换类 编辑:程序博客网 时间:2024/05/17 21:55
<pre name="code" class="java"><pre name="code" class="java">package com.mypractice.second;public class MethodDemo {private String name;private int age;public void getInfo(){//无参方法name = "朱天鹏1";age = 21;}public void getInfo(String name){//一个参数方法 this.name = name;age = 22;}public void getInfo(String name,int age){//两个参数方法this.name = name;this.age = age;}public void getMessage(){//获取信息System.out.println("name:"+name+"\nage:"+age);}}
package com.mypractice.second;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;public class MethodDemoTest {/** * @param args * @throws IllegalAccessException * @throws InstantiationException * @throws NoSuchMethodException * @throws SecurityException * @throws InvocationTargetException * @throws IllegalArgumentException */public static void main(String[] args) throws InstantiationException, IllegalAccessException, SecurityException, NoSuchMethodException, IllegalArgumentException, InvocationTargetException {//使用无参方法Class c = MethodDemo.class;//获取Class类MethodDemo methodDemo1 = (MethodDemo)c.newInstance();//反射MethodDemo对象Method method1 = c.getMethod("getInfo", null);//获取getInfo()方法method1.invoke(methodDemo1, null);//调用获取的方法methodDemo1.getMessage();//打印方法的信息//使用有参方法MethodDemo methodDemo2 = (MethodDemo)c.newInstance();//反射MethodDemo对象Method method2 = c.getMethod("getInfo",String.class,int.class);method2.invoke(methodDemo2,"aaa",22);methodDemo2.getMessage();}}
运行结果:
总结:
1.调用方法时
<pre name="code" class="java"> Method method2 = c.getMethod("getInfo",String.class,int.class);必须使用int.class 不能使用Integer.class。而构造方法中则使用Integer.class
2.invoke(obj,objs...),第一个参数为你要使用方法的对象,第二个参数是可变参数,为你要传入的参数。
0 0
- 反射机制学习3(反射调用方法)
- android 反射机制和反射调用方法
- java反射机制调用方法
- 反射机制实现方法调用
- java反射机制调用方法
- Java反射机制-调用方法
- java 反射机制 / 反射new 对象 / 反射方式调用方法
- Java反射机制总结学习--调用类的方法
- java反射学习笔记(3)----使用反射来调用方法
- java反射机制(2)- 实践:反射机制+动态代理实现模拟RMI远程方法调用
- java反射(3)--反射的调用方法
- 利用反射机制动态调用方法
- 利用反射机制动态调用方法
- C#的反射机制调用方法
- java反射机制 调用get set 方法
- OC反射机制-动态调用方法
- Java反射机制调用私有方法
- 利用Java反射机制调用类方法
- Eclipse集成perl
- 在eclipse中查看Android源代码
- LeetCode @ 3Sum D3F5
- PL/SQL database character set(AL32UTF8) and Client character set(ZHS16GBK) are different
- JavaWeb方向面试必备知识
- 反射机制学习3(反射调用方法)
- java文件操作之移动文件到指定的目录
- 零基础highcharts生成报表-简单应用
- fopencookie函数详解
- cenos安装配置owncloud过程
- 继承自HttpServlet的实现中,doGet和doPost方法都是protected域的
- 利用Attribute标记方法的调用权限
- Apache Mahout:适合所有人的可扩展机器学习框架
- N皇后问题c语言解法