1. 定义

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

2. 主要功能

  1. 在运行时判断任意一个对象所属的类;
  2. 在运行时构造任意一个类的对象;
  3. 在运行时判断任意一个类所具有的成员变量和方法;
  4. 在运行时调用任意一个对象的方法;
  5. 生成动态代理。

3. 方法

getFields():获得某个类的所有的公共(public)的字段,包括父类中的字段。 
getDeclaredFields():获得某个类的所有声明的字段,即包括public、private和proteced,但是不包括父类的申明字段。

同样类似的还有getConstructors()和getDeclaredConstructors()、getMethods()和getDeclaredMethods(),这两者分别表示获取某个类的方法、构造函数。

转载于:https://www.cnblogs.com/haimishasha/p/11609710.html

JAVA基础系列:反射相关推荐

  1. 知其然,知其所以然之Java基础系列(一)

    相信大家在最初接触Java基础学习的时候,也只是跟着课本上的描述学习,知其然,不知所以然,要想成为一个Java老鸟,不仅要学会怎么用,也要知道为何这么用.在Java基础系列的博客中,我会列举一系列大家 ...

  2. 夯实Java基础系列9:深入理解Class类和Object类

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  3. 夯实Java基础系列22:一文读懂Java序列化和反序列化

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  4. 夯实Java基础系列15:Java注解简介和最佳实践

    Java注解简介 注解如同标签 Java 注解概述 什么是注解? 注解的用处 注解的原理 元注解 JDK里的注解 注解处理器实战 不同类型的注解 类注解 方法注解 参数注解 变量注解 Java注解相关 ...

  5. 夯实Java基础系列23:深入理解Java继承、封装、多态的底层实现原理

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  6. 夯实Java基础系列20:从IDE的实现原理聊起,谈谈那些年我们用过的Java命令

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  7. Java基础系列五 面向对象程序设计

    Java基础系列第一章 初识Java语言 Java基础系列第二章 Java语言基础 Java基础系列第三章 Java流程控制 Java基础系列第四章 Java数组与字符串 Java基础系列第五章 面向 ...

  8. string substring的用法_夯实Java基础系列3:一文搞懂String常见面试题,从基础到实战...

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  9. 基础的java增删改查,Java基础系列(基础):Java使用Cookie增删改查操作!

    什么是Cookie? Cookie是由W3C组织提出,最早由NetScape社区发展的一种机制. Cookie是存储于访问者的计算机中的变量.每当同一台计算机通过浏览器请求某个页面时,就会发送这个co ...

  10. java中this_夯实Java基础系列7:一文读懂Java 代码块和执行顺序

    目录 #java中的构造方法 #构造方法简介 #构造方法实例 #例-1 #例-2 #java中的几种构造方法详解 #普通构造方法 #默认构造方法 #重载构造方法 #java子类构造方法调用父类构造方法 ...

最新文章

  1. Pytorch+LSTM+AI自动写诗实战
  2. 奠定了整个计算机科学的基础是什么,冯 诺依曼对计算机科学发展所作的贡献是什么...
  3. Serverless 的价值
  4. 检索数据_11_限制返回的行数
  5. ubuntu知道文件名查找文件路径
  6. Hibernate查询缓存
  7. 数据可视化组件Grafana详细解读--Debian/Ubuntu上的安装
  8. java 获取路径_java 获取当前类的路径
  9. cygwin下载可以用的服务器
  10. 百度图像识别(3)垃圾分类应用
  11. 自己组装电脑后怎么装Win10系统教学
  12. CentOS7.6 部署 Snipe-it 资产管理系统
  13. 最新版2020.11版本Anaconda百度网盘提取下载
  14. 【DQN高级技巧2】DQN高估问题:Target Network和Double DQN
  15. Android 常用API自查表(二)
  16. nessus安装及使用
  17. 树形结构的数据与一维数组数据的相互转换
  18. unity人物刚体移动_教程篇 | Unity人物移动动画
  19. MIT线性代数笔记四 矩阵的LU分解
  20. 洛天依 Chrome 主题

热门文章

  1. OpenShift 4 Tekton (5) - Task/Pipeline/Workspace/PipelineResource
  2. 配置SQL Server的命名管道和TCP/IP设置
  3. WPF DataGrid:解决排序、ScrollIntoView、刷新和焦点问题
  4. Debian 26 岁生日快乐!Happy DebianDay!
  5. 非结构化数据上下文中的GraphQL
  6. Odoo10参考系列--工作流
  7. ctypealpha php_php中Ctype函数用法详解
  8. java游戏将相_(Java)算法——位运算基础及基本应用
  9. 怎么解log方程_微观动力学解合成氨催化反应TOF
  10. html5表单注册应用