美文网首页
Java反射教程

Java反射教程

作者: SHUTUP | 来源:发表于2016-07-13 08:01 被阅读336次

    Java的反射机制,使得我们可以方便的在运行时检视:类、接口、变量和方法,而不需要在编译时期就知道类或方法等的名字。使用反射也可以初始化新的对象、调用方法、获取或赋予变量值。

    Java的反射机制既强大又有用。比如,当我们需要在运行时把一个对象映射到到数据库的一张表上,就像Butterfly Persistence做的那样。再或者,当我们需要在运行时把脚本语言的语句映射为对象的方法调用,就像Butterfly Container在解析它的配置脚本时做的那样。
    网络上已经有很多关于Java反射机制的教程了,然而它们中的大多数,甚至包括Sun公司自己的教程,对于Java反射机制以及它所带来的好处说明都仅仅是浮于表面的。

    本教程将比大多数我所看到的教程更深入的介绍Java反射机制。它会解释一些关于Java反射机制的基本概念,包括:如何结合数组、注解、通用代理和动态代理使用,进行类的动态加载和重加载。它也会向你展示如何完成一些特定的任务,比如获取一个类所有的getter方法,或者是访问一个类的私有变量或方法。本教程还将扫除一些对于运行时可以获取的普通信息的误解。一些人声称在运行时状态下,所有的普通信息都丢失了,这是不对的。

    本教程基于JDK6的Java反射机制进行描述。

    Java反射例子

    下面是一个向你展示Java反射机制如何使用的快速入门例子
    <pre>
    Method[] methods = MyObject.class.getMethods();
    for(Method method : methods){
    System.out.println("method = " + method.getName());
    }
    </pre>
    这个例子获取了MyObjectClass对象,通过Class对象获取了当前类中的所有方法,迭代返回的方法列表并打印了方法的名称。
    更详细的解释将在本系列教程的后续部分进行讲解。

    原文

    Java Reflection Tutorial

    下一节

    Java反射机制:类


    相关文章

      网友评论

          本文标题:Java反射教程

          本文链接:https://www.haomeiwen.com/subject/tiusjttx.html