文档章节

java反射

流川偑
 流川偑
发布于 2019/10/14 23:31
字数 630
阅读 49
收藏 0

「深度学习福利」大神带你进阶工程师,立即查看>>>

学习目标
什么是反射
反射运行原理
了解反射机制的相关类
获取 class 对象的 3 种方式
通过反射获取构造方法并使用
通过反射获取成员变量并调用
通过反射获取成员方法并调用
反射的实际应用案例
 
 
Java 反射 反射是框架设计的灵魂(使用的前提条件:必须先得到代表的字节码的 Class Class
用于表示 .class 文件(字节码))
一、反射的概述
定义: JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和
方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以
及动态调用对象的方法的功能称为 java 语言的反射机制。
要想解剖一个类 , 必须先要获取到该类的字节码文件对象。而解剖使用的就是 Class 类中的方
. 所以先要获取到每一个字节码文件对应的 Class 类型的对象。
以上的总结就是什么是反射。
反射就是把 java 类中的各种成分映射成一个个的 Java 对象。
例如:一个类有:成员变量、方法、构造方法、包等等信息,利用反射技术可以对一个类进
行解剖,把个个组成部分映射成一个个对象。
(其实:一个类中这些成员方法、构造方法、在加入类中都有一个类来描述)
如图是类的正常加载过程:反射的原理在与 class 对象。
熟悉一下加载的时候: Class 对象的由来是将 class 文件读入内存,并为之创建一个 Class 象。
 
二、反射机制的相关类
Java 反射相关的类如下:
类名                                                    用途
Class 类                                         代表类的实体,在运行的 Java 应用程序中表示类和接口
Field  类                                         代表类的成员变量(成员变量也称为类的属性)
Method 类                                 代表类的方法
Constructor 类                         代表类的构造方法
 
 
上一篇: jQuery
下一篇: 精华帖02
流川偑
粉丝 0
博文 6
码字总数 14252
作品 0
广州
私信 提问
加载中
此博客有 2 条评论,请先登录后再查看。
研究虚拟机--Jikes RVM

Jikes研究虚拟机(Jikes Research Virtual Machine,简称Jikes RVM)是一种成熟的用于执行Java程序的虚拟机,其早期版本与当前版本分别在通用公共许可证(CPL)与Eclipse公共许可证(EPL)下开...

匿名
2013/02/13
1.1K
0
Swing界面分析和调试工具--Swing Inspector

Swing Inspector是一个Java Swing/AWT用户界面分析和调试工具,功能与firebug类似,具有强大的Swing/AWT用户界面分析和调试相关功能。 适用于从java swing初级到高级的所有开发人员,能够快速...

匿名
2013/03/06
3.4K
0
Java™ 编译器--Janino

Janino是一个超级小但又超级快的Java™ 编译器. 它不仅能像javac工具那样讲一组源文件编译成字节码文件,还可以对一些Java表达式,代码块,类中的文本(class body)或者内存中源文件进行编译,...

匿名
2013/04/02
4.1K
0
高效 Java Web 开发框架--JessMA

JessMA 是功能完备的高性能 Full-Stack Web 应用开发框架,内置可扩展的 MVC Web 基础架构和 DAO 数据库访问组件(内部已提供了 Hibernate、MyBatis 与 JDBC DAO 组件),集成了 Action 拦截...

伤神小怪兽
2012/11/13
9.3K
3
代替Java Web Start--Getdown

Getdown 是一个Java程序部署工具,类似Java Web Start,但是避免了一些Java Web Start的限制,它可以自动把Java程序及相关资源下载和安装到客户的电脑上,当服务器上有新版本是能够自动升级。...

匿名
2012/12/03
637
0

没有更多内容

加载失败,请刷新页面

加载更多

大数据研发学习之路--Hadoop集群搭建

阅读编译文档 准备一个hadoop源码包,我选择的hadoop版本是:hadoop-2.7.7-src.tar.gz,在hadoop-2.7.7的源码 包的根目录下有一个文档叫做BUILDING.txt,这其中说明了编译hadoop所需要的一些...

DSJ-shitou
18分钟前
8
0
OSChina 周五乱弹 —— 特么是别的公司派来的特洛伊木马吧?

Osc乱弹歌单(2020)请戳(这里) 【今日歌曲】 小小编辑推荐:《我会守在这里》- 毛不易 《我会守在这里》- 毛不易 手机党少年们想听歌,请使劲儿戳(这里) @FalconChen :股市连跪了五天,...

小小编辑
19分钟前
26
2
如何在find中排除目录。命令 - How to exclude a directory in find . command

问题: I'm trying to run a find command for all JavaScript files, but how do I exclude a specific directory? 我正在尝试为所有JavaScript文件运行find命令,但是如何排除特定目录? ......

法国红酒甜
今天
69
0
《Java8实战》笔记(02):通过行为参数传递代码

本文源码 应对不断变化的需求 通过筛选苹果阐述通过行为参数传递代码 初试牛刀:筛选绿苹果 public static List<Apple> filterGreenApples(List<Apple> inventory){List<Apple> result = ......

巨輪
今天
19
0
JeeSite 4 架构特点、安全方面、为什么好、工匠精神、不忘初心

1、底层架构 以 Spring Boot 2 为基础,Maven 多项目依赖,模块分项目,松耦合,方便模块升级、增减模块。 模块化的数据库自动升级程序,当模块升级代码需要更新数据库时,自动执行对应版本 ...

ThinkGem
昨天
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部