美文网首页
Java反射概念

Java反射概念

作者: 皮皮力_996a | 来源:发表于2019-03-10 21:32 被阅读0次

反射的概述

  • JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
  • 要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象.
反射就是把java类中的各种成分映射成一个个的Java对象
  • 例如:一个类有:成员变量、方法、构造方法、包等等信息,利用反射技术可以对一个类进行解剖,把个个组成部分映射成一个个对象。
    (其实:一个类中这些成员方法、构造方法、在加入类中都有一个类来描述)
    *如图是类的正常加载过程:反射的原理在与class对象。
    熟悉一下加载的时候:Class对象的由来是将class文件读入内存,并为之创建一个Class对象。
image.png
  • Class 类的实例表示正在运行的 Java 应用程序中的类和接口。也就是jvm中有N多的实例每个类都有该Class对象。(包括基本数据类型)
    Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的defineClass 方法自动构造的。也就是这不需要我们自己去处理创建,JVM已经帮我们创建好了。
Java反射框架提供以下功能:
  • 在运行时判断任意一个对象所属的类
  • 在运行时构造任意一个类的对象
  • 在运行时判断任意一个类所具有的成员变量和方法(通过反射设置可以调用 private)
  • 在运行时调用人一个对象的方法
反射的主要用途
  • 反射最重要的用途就是开发各种通用框架。
  • 很多框架(比如 Spring)都是配置化的(比如通过 XML文件配置 JavaBean,Action之类的),为了保证框架的通用性,他们可能根据配置文件加载不同的对象或类,调用不同的方法,这个时候就必须用到反射——运行时动态加载需要加载的对象。

相关文章

  • Java基础之反射

    Java基础之—反射(非常重要)Java中反射机制详解Java进阶之reflection(反射机制)——反射概念与...

  • 《Oracle Java SE编程指南》26-01:反射的概念

    内容导航: 前言 1、Java反射的概念 2、Java反射的作用 3、Java反射相关API 前言 我们回忆一下在...

  • Java反射概念

    反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都...

  • Java反射概念

    反射的概述 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都...

  • Java高级工程师面试:Java中的反射机制的理解!反射机制的使

    反射的概念 反射: Refelection,反射是Java的特征之一,允许运行中的Java程序获取自身信息,并可以...

  • Android开发进阶—invoke反射及其原理解析

    反射的概念 反射:Refelection,反射是Java的特征之一,允许运行中的Java程序获取自身信息,并可以操...

  • java 反射进阶

    1.java反射基础 2.java反射进阶 上一节介绍了反射基础,本节介绍更深入的反射概念。 1.获取不到Clas...

  • Java基础--反射

    什么是Java反射 概念 java反射是指java能够在运行时确定类的类型信息,包括其方法、字段、构造函数等,并能...

  • 深入java反射

    概念:反射(Reflection)是Java 程序开发语言的特征之一,反射也是java中一种强大的工具,能够使我们...

  • JAVA反射机制

    JAVA反射概念   JAVA反射(Reflection):在运行状态中,对于任意一类,都能够知道这个类的所有属性...

网友评论

      本文标题:Java反射概念

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