• Java——反射


      又是一个之前没有好好学的点,落下的东西实在太多了,希望来得及。

      书中写到,反射机制可以用来:1、在运行时分析类的能力。2、在运行时查看对象。3、实现通用的数组操作代码。4、利用Method对象,这个对象很像C++中的函数指针。

    Class类

      程序运行期间,系统始终为所有对象维护一个被称为运行时的类型标识。这个信息跟踪着每个对象所属的类。虚拟机利用运行时类型信息选择相应方法执行。

      Object类中的getClass()方法就可返回这样一个保存这些信息的Class类的实例。一个Class对象表示一个特定类的属性。最常用的Class方法是getName方法,这个方法会返回该类的名字,如果类在一个包里,那么包名也会是类名的一部分。

      还可以通过Class的forName静态方法,获得类名对应的Class对象,即Class.forName(className)。若className不是类名或接口名,则该方法将会抛出一个异常。因此,使用该方法时,需要提供异常处理方法。

      getClass().newInstance()也是一个获取类实例的方法。

    利用反射分析类的能力

      java.lang.reflect包里有Field、Method、Constructor三个类,分别描述类的域、方法和构造器。三个类都有getName方法,用于返回类的名称。

      Field类可以通过getType方法,用来返回描述域所属类型的Class对象。Method,Constructor类都有能报告参数的方法。Method的方法更加丰富,还能报告方法的返回值、方法的访问关键字。

      Class类中的getFields、getMethods、getConstructors方法也可以返回类提供的public域、方法和构造器数组。getDeclareFields、getDeclareMethods、getDeclareConstructors方法可返回类中声明的所有域、方法和构造器。

  • 相关阅读:
    无题
    晒新玩具
    PHP开发调试环境配置(基于wampserver+Eclipse for PHP Developers )
    Java
    [转]const 与 readonly知多少
    Watin 杂谈
    WCF
    [转]: 两分钟彻底让你明白Android Activity生命周期(图文)!
    【转】单链表逆序
    桥梁模式和适配器模式的区别
  • 原文地址:https://www.cnblogs.com/dloooooo/p/13758369.html
Copyright © 2020-2023  润新知