反射摘要:

反射是java中非常强大的工具,利用反射可以书写框架,而框架就是半完成的代码。反射就是对类中的各个部分进行封装为其它对象,并且可以随时提取出Class或Object成员的属性,例如成员变量,成员方法,构造变量和Annotation。提取之后还可以对各个组成部分进行操作。就是可以根据一个名字(name)写入一个类,并且可以调用它的方法。

按照我的理解就是java一个静态语言,但是可以在运行时通过反射技术调用一些未知类的成员属性,并利用,这里新创建了一个类的分身。而类reflect本身就有反射,映射的意思。

与java反射相关的类(都放在java.lang.reflect中)

类名 用途
class类 代表类的实体,在运行的java程序中表示类和接口  
Filed类 表示类的属性
Method类 类的方法
Constructer类 类的构造方法

class类:方法

https://www.jianshu.com/p/9be58ee20dee参考

反射(Reflect)的更多相关文章

  1. Go语言学习笔记(四)结构体struct & 接口Interface & 反射reflect

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959 结构体struct struct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套: go中的struc ...

  2. go语言之行--接口(interface)、反射(reflect)详解

    一.interface简介 interface(接口)是golang最重要的特性之一,Interface类型可以定义一组方法,但是这些不需要实现.并且interface不能包含任何变量. 简单的说: ...

  3. Golang的反射reflect深入理解和示例

    编程语言中反射的概念 在计算机科学领域,反射是指一类应用,它们能够自描述和自控制.也就是说,这类应用通过采用某种机制来实现对自己行为的描述(self-representation)和监测(examin ...

  4. golang中的反射reflect详解

    先重复一遍反射三定律: 1.反射可以将"接口类型变量"转换为"反射类型对象". 2.反射可以将"反射类型对象"转换为"接口类型变量 ...

  5. Java框架基础——反射(reflect)

    一.Class类的使用 1)在面向对象(oop)的世界里,万事万物皆对象. 在Java中,包括基本的数据类型,都是对象. Class c = int.class;//int 的类类型 那就是说: 类是 ...

  6. 类的加载到反射reflect

    类的加载: 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载.连接.初始化这三个步骤来实现对这个类进行初始化. 加载: 就是指将class文件加载进入内存,并为之创建一个Class对 ...

  7. java 反射(reflect)总结,附对象打印工具类

    java反射机制认知 java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取类的信息以及动态调用对象的方法的 ...

  8. (java)从零开始之-反射Reflect

    反射: 当一个字节码文件加载到内存的时候,jvm会对该字节码进行解剖,然后会创建一个对象的Class对象,把字节码文件的信息全部都存储到该Class对象中,我们只要获取到Class对象,我们就可以使用 ...

  9. Java基础——反射 reflect

    什么是反射 (1)Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称 ...

  10. Go语言反射reflect

    目录 通过反射获取类型信息 理解反射的类型(Type)与种类(Kind) reflect.Elem() - 通过反射获取指针指向的元素类型 通过反射获取结构体的成员类型 通过反射获取值信息 使用反射值 ...

随机推荐

  1. 1071 - Specified key was too long; max key length is 767 bytes

    set global innodb_large_prefix=on;set global innodb_file_format=BARRACUDA; 主从都要修改以上2个参数.

  2. pdf2docx:可将 PDF 转换成 docx 文件的 Python 库

    pdf2docx:https://github.com/dothinking/pdf2docx 可将 PDF 转换成 docx 文件的 Python 库. from pdf2docx import p ...

  3. JavaScript逗号运算符的用法

    var a = 3, b b = (a++, a) 与 var a = 3, b b = a++ 区别

  4. Vue3学习笔记

    为什么需要Composition API ? 主要原因:当一个组件的变得逻辑复杂的时候,痛点:多种逻辑代码被分散到组件的各个部分,比如代码的相关逻辑可能会在 data: {...},computed: ...

  5. SqlServer查看所有表数据条数

    select a.name as 表名, max(b.rows) as 记录条数 from sysobjects a ,sysindexes b where a.id=b.id and a.xtype ...

  6. call与apply的区别与共同点

    call与apply区别 共同点:都会立即执行函数 call:是以逗号为间隔,传递多个参数 apply:是以数组来进行传递多个参数

  7. KEIL5中C/C++优化等级问题

    知乎上有篇详解   https://zhuanlan.zhihu.com/p/24402180 强烈推荐 C/C++的优化等级会对程序产生 不定性的影响,至于选择哪种优化等级必须从 现有的程序分析才行 ...

  8. 整合mybatis-示例

    引入依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o ...

  9. lg8945题解

    考虑一个20分的\(O(n^2)\)做法:枚举答案区间\([l,r]\),那么显然要把尽可能多的1填入\([l,r]\).使用前缀和计算\([l,r]\)中\(0\)的个数,那么填入后的价值可以\(O ...

  10. 【SQL Server】获取表格插入的id(二)——newID()

    现在有一个需求,插入api调用日志表.然后,发起HTTP请求()请求时,需要带入日志表的id). 简化无关的添加,SQL Server表格设计如下: CREATE TABLE mylog ( id I ...