关闭

JAVA反射之方法反射的基本操作

标签: 方法的反射
242人阅读 评论(0) 收藏 举报
分类:


1.什么是JAVA反射机制

1.1.JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。

2.方法的反射

2.1.如何获取某个方法:方法的名称和方法的参数列表才能唯一的确定某个方法。

2.2.方法的反射操作:method.invoke(对象,参数列表)例如:

public class MethodDemo1(){
    public static void main(String[] args){
        //要获取print方法就是获取类的信息,要先获取类的类类型
        A a1 = new A();
        Class c1 = a1.getClass();
        /*
         *获取方法由方法名和参数决定
         *getMethod获取的是public方法
         *getDeclaredMethod自己声明的方法
         */
        try{	
             //Method m = c.getMethod(“print”, new Class[]{int.class, int.class})
             Method m = c.getMethod(“print”, int.class,int.class);

             //方法的反射操作
             //a1.print(10,10);方法的反射操作是作用于m对象来经行方法的调用和	a1.print调用的效果相同
             //如果方法有返回值则放回具体返回值,没有则返回null
             Object o = m.invoke(a1,new Object[]{int.class, int.class});

        }cathc(Exception e){
            e.printStackTrace();

        }
    }
}

class A(){
    public void print(int a, int b){
        System.out.println(a+b);
    }

    public void print(String a, String b){
        System.out.println(a.toUpperCase()+”,”+b.toLowerCase());
    }
}


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:17636次
    • 积分:718
    • 等级:
    • 排名:千里之外
    • 原创:55篇
    • 转载:5篇
    • 译文:0篇
    • 评论:2条
    最新评论