全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java基础--反射机制

反射

反射可以使我们很方便的创建灵活的代码,这些代码可以在运行时装配,无需在组件之间进行源代码链接。反射允许我们在编写和执行时,使我们的代码能够接入装载到JVM中的类的内部信息,而不是源代码中选定的类协作的代码。

反射机制作用

  1. 反编译:.class -> .java
  2. 通过反射机制访问Java对象的属性,方法,构造方法

反射的使用

反射机制获取类的三种方式

Class c1 = Class.forName("com.webb.basis.reflect.Demo"); // 一般采用这种方式
Class c2 = Demo.class;
Class c3 = new Demo().getClass();

创建对象:获取类之后我们来创建它的对象,利用newInstance()

c1.newInstance(); // 调用了Demo的无参构造方法

获取属性

// 获取所有属性
Field[] fields = c1.getDeclaredFields();
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(Modifier.toString(c1.getModifiers()) + " class " + c1.getSimpleName() + "{\n");
for (Field field : fields) {
 stringBuffer.append("\t");
 stringBuffer.append(Modifier.toString(field.getModifiers()) + " ");
 stringBuffer.append(field.getType().getSimpleName() + " ");
 stringBuffer.append(field.getName() + ";\n");
}
stringBuffer.append("}");
System.out.println(stringBuffer);
// 获取指定的属性
Field field = c1.getDeclaredField("name"); // 不存在的话会报错 

获取方法和构造方法

方法关键字
getDeclaredMethods()
getReturnType()
getParameterTypes()
getDeclaredMethod()

构造方法关键字
getDeclaredConstructors()
getDeclaredConstructor()

setAccessible(true);

对属性设置访问权限,当类中的变量为private时,必须设置此项。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# java  # 反射机制  # java基础之反射和泛型以及注解  # java基础学习笔记之反射  # Java 基础详解(泛型、集合、IO、反射)  # 新手学习java反射基础  # Java基础之反射原理与用法详解  # 实例讲解Java基础之反射  # JAVA基础之注解与反射的使用方法和场景  # 深入解析Java反射之基础篇  # 使我  # 源代码  # 不存在  # 三种  # 报错  # 此项  # 很方便  # 量为  # 类中  # 而不是  # 访问权限  # 反编译  # Class  # pre  # reflect  # brush  # forName  # Demo  # basis  # webb 


相关文章: 如何高效完成自助建站业务培训?  如何用AWS免费套餐快速搭建高效网站?  青岛网站设计制作公司,查询青岛招聘信息的网站有哪些?  如何在阿里云购买域名并搭建网站?  网站制作培训多少钱一个月,网站优化seo培训课程有哪些?  建站主机如何选?性能与价格怎样平衡?  网站制作免费,什么网站能看正片电影?  建站之星图片链接生成指南:自助建站与智能设计教程  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  c# 在高并发场景下,委托和接口调用的性能对比  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  如何在阿里云香港服务器快速搭建网站?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  郑州企业网站制作公司,郑州招聘网站有哪些?  如何快速生成ASP一键建站模板并优化安全性?  如何配置IIS站点权限与局域网访问?  网站制作员失业,怎样查看自己网站的注册者?  专业网站制作服务公司,有哪些网站可以免费发布招聘信息?  定制建站方案优化指南:企业官网开发与建站费用解析  行程制作网站有哪些,第三方机票电子行程单怎么开?  如何用PHP快速搭建高效网站?分步指南  北京网站制作的公司有哪些,北京白云观官方网站?  简单实现Android验证码  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  制作农业网站的软件,比较好的农业网站推荐一下?  如何在阿里云部署织梦网站?  魔毅自助建站系统:模板定制与SEO优化一键生成指南  网页设计与网站制作内容,怎样注册网站?  香港服务器租用每月最低只需15元?  如何在橙子建站上传落地页?操作指南详解  制作国外网站的软件,国外有哪些比较优质的网站推荐?  ,南京靠谱的征婚网站?  如何快速选择适合个人网站的云服务器配置?  如何快速生成专业多端适配建站电话?  建站之星安装失败:服务器环境不兼容?  香港服务器选型指南:免备案配置与高效建站方案解析  建站之星免费版是否永久可用?  如何注册花生壳免费域名并搭建个人网站?  企业微网站怎么做,公司网站和公众号有什么区别?  南京网站制作费用,南京远驱官方网站?  已有域名建站全流程解析:网站搭建步骤与建站工具选择  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?  c++怎么使用类型萃取type_traits_c++ 模板元编程类型判断【方法】  高端网站建设与定制开发一站式解决方案 中企动力  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  在线制作视频网站免费,都有哪些好的动漫网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。