1. 反射主要对象

    1. Class
    2. Constructor
    3. Field
    4. Method
  2. API-Class
    1. 获取Class对象

      1. Object.getClass()
      2. className.class
      3. Class.forName()
      4. Class.getComponentType() 获得数组对象的元素类型
    2. 获取Class信息
      1. getDeclaredClasses() 返回在类中定义的公共、私有、保护的内部类和接口。但不包括继承的内部类和接口
      2. getClasses() 返回在类中定义的公共的内部类和接口,以及从父类、父接口那里继承来的内部类和接口
      3. getClassLoader() 返回加载此类的类加载器
      4. getConstructors() 返回public构造器
      5. getDeclaredConstructors() 返回所有构造器
      6. getFields() 获取所有public成员变量
      7. getDeclaredFields() 获取所有成员变量
      8. getDeclaredMethods() 获取此类所有的public方法,包括继承
      9. getDeclaredMethods() 获取在此类中定义的所有方法(public, private), 但不包括继承的方法
    3. 产生对象
      1. newInstance() 只能使用无参构造器
  3. API-Field
    1. 获取类的成员变量信息(包括类变量和实例变量)

      3. 获取变量名 field.getName()

      4. 获取变量类型 field.getType()

      5. 获取变量的参数类型,针对泛型 field.getGenericType()

      6. 获取变量修饰符 field.getModifiers() 含义见 Modifier类

      7. 获取变量所在的类 field.getDeclaringClass()
    2. 读写成员变量的值
      1. 读取成员变量的值

        // public
        field.get(foo)
        // private
        field.setAccessible(true)
        field.get(foo)
      2. 修改成员变量的值

        field.set(foo, "123")
        // private
        field.setAccessible(true)
        field.set(foo, "123")
  4. API-Method
    1. 获取方法信息

      1. method.getName()
      2. ...
    2. 反射调用方法
      1. method.invoke()
  5. API-Constructor
    1. newInstance() 生成对象,可以使用带参构造器

java反射API的更多相关文章

  1. Java反射API研究(1)——注解Annotation

    注解在表面上的意思,只是标记一下这一部分,最好的注解就是代码自身.而在java上,由于注解的特殊性,可以通过反射API获取,这种特性使得注解被广泛应用于各大框架,用于配置内容,代替xml文件配置. 要 ...

  2. Java反射API研究(3)——java.lang.Class<T>

    对于反射来说,Class是核心,任何反射的对象都需要通过Class来获得. Class 类的实例表示正在运行的 Java 应用程序中的类和接口.枚举是一种类,注释是一种接口.每个数组属于被映射为 Cl ...

  3. Java反射API研究(2)——java.lang.reflect详细内容与关系

    对于最新的java1.8而言,reflect中接口的结构是这样的: java.lang.reflect.AnnotatedElement java.lang.reflect.AnnotatedType ...

  4. Java反射api详解

    虽然已经用了很多反射相关的api,但是还没有详细研究官方api文档,下面以1.6为基础研究一下api文档(因为只找到了1.6的中文版...),同时补充1.7和1.8对反射相关api的改变.

  5. Java反射API使用实例

    /**     * 访问Class对应的类所包含的注释:getAnnotation();getDelaredAnnotation();     * 访问Class对应的类所包含的内部类:getDecl ...

  6. Java反射API研究(4)——Class中的重要对象

    一.Constructor与Method的父类:Executable Executable表示一个可执行类,构造方法与普通方法都是Executable AnnotatedType[] getAnnot ...

  7. JDK1.7新特性(4):java语言动态性之反射API

    直接通过一个代码示例来熟悉java中通过反射来对构造函数/域以及方法处理的相关API: package com.rampage.jdk7.chapter2; import java.lang.refl ...

  8. Java 反射机制及Annotation

    转自:http://justjavac.iteye.com/blog/714654 Java 反射是 Java 语言的一个很重要的特征. 它允许运行中的 Java 程序对自身进行检查,并能直接操作程序 ...

  9. Java 反射机制分析指南

    一.JAVA是动态语言吗? 一般而言,说到动态言,都是指在程序运行时允许改变程序结构或者变量类型,从这个观点看,JAVA和C++一样,都不是动态语言. 但JAVA它却有着一个非常突出的动态相关机制:反 ...

随机推荐

  1. python scrapy爬取前程无忧招聘信息

    使用scrapy框架之前,使用以下命令下载库: pip install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple 1.创建项目文件夹 scr ...

  2. jsp页面获取当前系统时间

    value="<% out.print(new java.text.SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(n ...

  3. beta week 1/2 Scrum立会报告+燃尽图 01

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/9911 git地址:https://e.coding.net/Eustia ...

  4. 【题解】P1373 小a和uim之大逃离

    [题解]P1373 小a和uim之大逃离 考虑到可能会MLE,考虑状态压缩一下 由于只要得到他们的差就行了,所以直接少记录一维就好了 \(dp(i,j,r,1/0)\)表示在\(i,j\)点,当前ui ...

  5. 2020你还不会Java8新特性?方法引用详解及Stream 流介绍和操作方式详解(三)

    方法引用详解 方法引用: method reference 方法引用实际上是Lambda表达式的一种语法糖 我们可以将方法引用看作是一个「函数指针」,function pointer 方法引用共分为4 ...

  6. 全网最详细的Ceph14.2.5集群部署及配置文件详解,快来看看吧! -- <2>

    部署Ceph集群 Ceph版本选择 Ceph版本来源介绍 Ceph 社区最新版本是 14,而 Ceph 12 是市面用的最广的稳定版本. 第一个 Ceph 版本是 0.1 ,要回溯到 2008 年 1 ...

  7. linux入门系列2--CentOs图形界面操作及目录结构

    上一篇文章"linux入门系列1--环境准备及linux安装"直观演示了虚拟机软件VMware和Centos操作系统的安装,按照文章一步一步操作,一定都可以安装成功.装好系统之后, ...

  8. Java 多线程与并发(六):AQS

    我们前面几张提到过,JUC 这个包里面的工具类的底层就是使用 CAS 和 volatile 来保证线程安全的,整个 JUC 包里面的类都是基于它们构建的.今天我们介绍一个非常重要的同步器,这个类是 J ...

  9. UML之类之间的关系

    UML 简介 统一建模语言(Unified Modeling Language,UML) 作用:对软件系统进行说明 如果说软件系统是一本小说的话,那么 UML 就是将小说动漫化. 也许你看过这本小说, ...

  10. [Debug]IOS微信浏览器不支持form表单的target=_blank

    测试代码如下 <?php echo '<meta name="viewport" content="width=device-width,minimum-sc ...