zoukankan      html  css  js  c++  java
  • Java反射基础知识

    反射机制就是可以把一个类,类的成员(属性、方法)当成一个对象来操作,也就是说,类,类的成员,我们在运行的时候可以动态的去操作它们。

    所有的Java类都继承了Object类,在Object类中定义了一个getClass()方法,该方法返回一个类型为Class类型的对象实例,例如:Class textFieldC = textField.getClass();

    利用Class类型的对象实例,可以访问该对象的textField对象的描述信息,可以访问的主要描述信息如表所示:

    通过反射可访问的主要描述信息
    组成部分 访问方法 返回值类型 说明
    包路径 getPackage() Package对象 获得该类的存放路径
    类名称 getName() String对象 获得该类的名称
    继承类 getSuperClass() Class对象 获得该类的父类
    实现接口 getInterfaces() Class型数组 获得该类实现的所有接口
    构造方法

    getConstructors()

    getConstructor(Class<?>...parameterTypes)

    getDeclaredConstructors()

    getDeclaredConstructor(Class<?>...parameterTypes)

    Constructor型数组

    Constructor对象

    Constructor型数组

    Constructor对象

    获得所有权限为public的构造方法

    获得权限为public的指定构造方法

    获得所有的构造方法,按声明顺序返回

    获得指定构造方法

    方法 

    getMethods()

    getMethod(String name, Class<?>...parameterTypes)

    getDeclaredMethods()

    getDeclaredMethod(String name, Class<?>...parameterTypes)

    Method型数组

    Method对象

    Method型数组

    Method对象

    获得所有权限为public的方法,包含从父类继承的方法

    获得权限为public的指定方法

    获得所有方法,按声明顺序返回,不包含从父类继承的方法

    获得指定方法

    成员变量

    getFields()

    getField(String name)

    getDeclaredFields()

    getDeclaredField(String name)

    Field型数组

    Field对象

    Field型数组

    Field对象

    获得所有权限为public的成员变量,包含从父类继承的成员变量

    获得权限为public的指定成员变量

    获得所有成员变量,按声明顺序返回,不包含从父类继承的成员变量

    获得指定成员变量

    内部类

    getClasses()

    getDeclaredClasses()

    Class型数组

    Class型数组

    获得所有权限为public的内部类、

    获得所有内部类

    内部类的声明类 getDeclaringClass() Class对象 如果该类为内部类,则返回它的成员类,否则返回null
  • 相关阅读:
    for循环中的作用域 闭包
    for,forEach,for in ,for of,$.each和$().each应用
    交换变量的值
    URL和URI的关系
    Delphi Idhttp.Get方法
    Delphi 时间转换异常处理(各Win系统时间显示格式不同)
    Delphi 接口统一方法
    Delphi 高级停靠(Dock)技术的实现[转载]
    delphi 客户端_动态装载插件DLL
    ADOQuery导出Excel超快(大量数据)!
  • 原文地址:https://www.cnblogs.com/czp2bconfident/p/9326391.html
Copyright © 2011-2022 走看看